Add src files and separate tests