initial lock impl

only code. NO TESTS
setting clock after __init__

since it doesnt work otherwise
comment update
working scheduler locks

- tests added
- taking silverberg client as arg to SchedulerService constructor
- modified to handle BusyLockError occurring second or third time
Merge branch 'auto_377_there_otter_be_an_otterclock' into scheduler_locking
updated docstring
Merge branch 'auto_377_there_otter_be_an_otterclock' into scheduler_locking

Conflicts:
	otter/test/test_scheduler.py
Occurred after refactoring tests into common asserts. Taking that code in this commit
adjusted lock tests to use validate_calls
Merge pull request #247 from rackerlabs/scheduler_locking

Scheduler locking
Merge pull request #250 from rackerlabs/auto_377_there_otter_be_an_otterclock

Scheduler locking changes to master