Add support for non site wide roles

For non site wide roles, permissions need to be given to individual pages.

Currently, when a user is given a 'non site wide' role within a site,
a page permission is created that grants him permissions to the site's first
page. In the future, the site admin will be able to select the pages for which
the page permissions will be created.
Added migration for the 'is_site_wide' column
Various code cleanup:

* remove unused and missnamed __niit__
* use group_id rather than group.id when setting _old_group
When role permissions change, derived_page_permissions also get updated
Merge pull request #7 from pbs/LUN-825

Add support for non site wide roles