Adding altitude component to the Geospatial Coordinate Encoder

Fixes #1461 

Since the Coordinate Encoder doesn't have an upper limit on the number of dimensions of the coordinates, I think that using a 3D geocentric coordinate system to encode longitude, latitude and altitude should work.

This is the solution I propose:
- If no altitude is given, then continue to use the spherical mercator projection to calculate x and y coordinates from latitude and longitude.
- If altitude is given, then calculate the spherical mercator projection and transform the x and y values to geocentric 3d coordinates using WGS84 datum and the given altitude.