Compile Extension Fields to correct message class

The libprotoc Generator provides extension fields to a FileDescriptor or
Descriptor object. I misunderstood that the descriptor extension fields are
not the fields that belong to the corresponding message proto/class.

The fix is to store the extension fields by their containing type name when
we initially parse through the messages in the file descriptor. Then when we
go to print each message's fields we print out the previously extracted
extension fields.

Fixes #69.