changes _users[user] to _users[user.getId()] in Application
refactors User, changes session code, adds _save, fleshes out _register