Codec 3

probably fine to merge now since we are unlikely to need to make another 2.x release, but I intend to let this sit a few days to accrue any comments and a few more changes.

many api changes prompting a primary version increase:
- most classes' package changed (there are no packages in codec 2)
- annotation names changed completely
- class map and class map factory removed in favor of new plug-in system
- less checked exceptions
- possibly further changes (eg. treating transient fields differently or removing codec json)

other notable changes/ features:
- hocon parser
- hocon based plug-in system to replace class maps
- new syntactic sugar options
- misc. clean-up