James Tomkins announces retirement