- Complete rewrite of the code
- Parameters are now defined by methods instead of maps
- Paramaters are stored in variables passed in during definition instead of returned in a map
- Parameters now support typing
- Adding parameters is now simpler with a vararg, named parameter style interface