def coordinates=(c)
      case c
      when String
        @coordinates = c.split(',')
        unless @coordinates.length == 2 || @coordinates.length == 3
          raise "Coordinates string may only have 2 parts (indicating lat and long) or 3 parts (lat, long and altitude)"
        end
      when Array
        @coordinates = c
      when Hash
        @coordinates = [:lng, :lat, :alt].collect {|attr| c[attr]}.compact
      else
        raise ArgumentError, "Coordinates must be either a String, Hash or an Array"
      end
    end
def coordinates=(c)
      case c
      when String
        @coordinates = c.split(',')
        unless @coordinates.length == 2 || @coordinates.length == 3
          raise "Coordinates string may only have 2 parts (indicating lat and long) or 3 parts (lat, long and altitude)"
        end
      when Array
        @coordinates = c
      when Hash
        @coordinates = [:lng, :lat, :alt].collect {|attr| c[attr]}.compact
      else
        raise ArgumentError, "Coordinates must be either a String, Hash or an Array"
      end
    end
Set the coordinates