Use the macro-paradise compiler plugin for AutomaticJsonCodecBuilder

No more horrifying rats'-nests of case classes!
Make hierarchy codecs obey the LSP

Before they were only able to encode instances of the precise classes they
were told about.  Now they'll try to resolve instances of subclasses
to codecs when encoding.
sbt 0.12.4; sbt-dependency-graph 0.7.4
Build flatter token/event iterators

Not sure I'm happy with the details yet.  Vector seems like it'd have
a large constant-factor overhead for this sort of thing.  But meh
it's better than O(number of appended iterators) hasnext/next operations.