Refactor models for environmental data

Fixes #56