This is a large commit rolling in many fixes, updates...

* replace sge::prevent_voter_access method with 'allow_only' method, requiring the programmer to explicitly indicate who should have access (changed on all necessary pages)

* update sge::config() function definition and calls

* Small security checks added to ballot

* https://trello.com/c/e0Idk1O2 augment election model to include a commissioner-configurable time at which we can begin to calculate hours-eligibility; update DDL, tests, etc to accommodate new fields

* https://trello.com/c/e0Idk1O2 admin settings determining margins in semesters; minimal cron window for calculating hours

* update validation to handle resolutions being edited; update resolutions tests to handle newly-added field

* improved and simplified cron function

* update base class to handle ids that don't exist in the db

* update tests