added gtest
basic version working
added gtests
made the macro names long