Split to header/source, added testing to build