Auth logic code.

Use AuthTarget object. Multiple Time frame should work.
Time frame tests.

Add more test, and fix bug w/ granting access.