Added additonal args to TransverseMercator

This PR adds a number of additional arguments to the constructor of TransverseMercator. I have done this because I wish to plot data expressed in a TransverseMercator coordinate system with non-zero false easting and northing values. As cartopy currently stands this Transverse Mercator cannot be represented in Cartopy using the TransverseMercator class. This PR also modifies OSGB and OSNI so that they are now subclasses of TransverseMercator. I'd also like to make EuroPP a subclass of TransverseMercator but there are complications over adding the zone parameter so I have left that for the future.

Note that I am unsure of the appropriate values for the limits of the projection (previously they were +-180 and +-90 pseudo-degrees based on a unit earth radius) so I have chosen values that result in a similar looking global plot with the default parameter values. This removal of an artificial unit radius means a change in the xytick labels - see the test image change.