Extracted method
Added support additional fields to interface definitions
Pass in options to generator
Added MIT license