Restructured packages and added class diagram.