Features/162 geosubmit

This adds a new geosubmit API to close out #162
Mutating the data inside a validator function feels wrong to me. Isn't there a better place later on?