cabal complains: add missing main function
export some functions
add Eq instances
Added test from part 3