adding unit testing and a bunch of improvements
Rebuilt everything from scratch. [NOT BUILDING]

Removed parameters and operators, replaced with lambdas only.
Still not building.
minor changes in mac osx
Trying to get to work with consts and stuff
Working version with some unit tests implemented
Merge branch 'dev'