Separated files and enhaced oop syntax
Corrected bug in == operator
Added generic for support
Added support for next and pairs