Initialize now inside one transaction, and..

- Added default values
- Fixed a bug whose types were not created
- Wrapped all the creation inside one transaction
Error when editing users, was falling on "email already exists" error
Cleaned up the mess on the app.php using controller providers

A lot of code was moved and the style was fixed to follow psr-2

The before callbacks was changed to one callback that call
the isPublic and isGuest methods in the controllers

see BaseController.php for more details.
Merge pull request #83 from caferrari/controllers_providers

Controllers Providers