Moved client portion to its own package.