Trying to figure out program flow
Adding jaxb support by way of copious copypasta.

Basically I'm just copying the thrift code generation stuff and changing variable names. This is kind of terrible, and I think I'll try for a more generic solution once I get a good mental handle on how the whole process works. Ideally, I'd make a simple interface that can be easily extended to work both with jaxb and future code generators, like wire. The existing code_gen.py is better than nothing, but doesn't implement enough functionality to avoid lots of duplication.
Slightly less confused than I was this morning.

Added simple_gen.py to define a somewhat more generic CodeGen task, which is inherited by JaxbGen.
The targets aren't being built quite right; some of my code is being called, but some things that
I thought code_gen.py called for me aren't happening, and I'm still trying to figure out how
everything ties together. I have accomplished getting a list of files that should be generated, at least,
though the package they get put in is not yet configurable (which it very much needs to be).

TODO: figure out how all these targets are being created and passed around, understand exactly what all
these methods are supposed to do, make things configurable in the BUILD file, actually generate the java
files. And remove print statements, have to do that eventually, and more documentation once I understand
the code well enough to document it.
not currently working
fixed obvious error
about to delete a bunch of stuff that might not be necessary
Deleted a bunch of stuff that was apparently unnecessary, by looking at proto rather than thrift
About to hardcode stuff to get it to work, so I don't get too ahead of myself
Jaxb file generation seems to work now. Everything compiles.

ExampleJaxb.java crashes, but it crashes because it can't
find the template resource, not because there are problems
loading the generated classes.
removed debug exception from code_gen.py
Jaxb code generation appears to be fully functional.

I still get a warning regarding a target not being consumed; presumably I'm not making
some kind of library callback that I should be, but I'm not sure what at this time.

Custom package are also (probably) not working; I haven't tried them yet. Currently it
just uses the .xsd directory as the target package (by searching for 'com' in the file
path leading up to the schema, which is a hack).