create cascading permission. user.can now attempts to find a role within the space. If it doesn't it cascades up until if finds the correct role
User.can processes a string or array and returns a boolean object. It searches the hierarchy of user roles for permission
Update to permission
Made major changes to CLient-side models