Move implementation files to lib/src