Refactored the main API

Used jms/cg to create the proxy class.
Used CompilerPassInterface to compile the container.
Merge pull request #1 from odracci/refactor

Refactored the main API