Reorginization of packages and classes by functionality rather than layer. Also deleted and merged classes for simplicity.