Improve Elm.Package.Description

- expose locateExposedModules publicly
- more sensible API for reading descriptions
- add Aeson instances and clean up JSON parsing