Geo: parameter reading simplification

Reading stuff all at once using Applicative functions allows for better
collective error reporting in the Either monad (Left e reports errors
for multiple fields).