Made the Session object more reliable by adding exception throwing.
Updated all classed affected.
Created Unit Tests for User/Permission objects.