Moved actual implementations of classes into .impl packages to make package structure more readable.