Moved 'properties' up the GeoJSON herirarchy and added annotations to not serialize  properties when empty.