New Feature: User level permissions WIP

This adds the ability to assign permissions per user apart from roles.
This feature simplifies the ACL system, where to avoid create additional
roles for simple tasks. Please be aware user level permissions will override role based permission. Access user permissions from admin/user/list
Update Feature: Cache user roles into data for performance

This change breaks few things but improves performance by caching roles
into user data WIP.
Update feature: Cleanup user model and added protected methods
Fixed Issue: cleanup user model and remove unused columns