supervisor.exec_config only returns completion deferred - no tests

job id is created and manged by _Job.
Create mocked group
adding to pool from job caller - no tests

After discussing with @cyli, we decided to change pool addition in this
branch itself. Now, all the callers of _Job and _DeleteJob will get
deferred and will add it to the pool
started tests
DeferredPool has __contains__
execute_launch_config shorter tests

using FakeSupervisor and FakeJob
supervisor lint fixes
Merge branch 'master' into job-synchronous

Conflicts:
	otter/test/test_supervisor.py
_Job tests and other tests pass
checking delete deferred in pool
Fix IScalingScheduleCollection docs
Merge pull request #677 from rackerlabs/fix-model-interfaces

Fix IScalingScheduleCollection docs
Merge pull request #648 from rackerlabs/job-synchronous

AS-285: Jobs finish after update (review)
If there are no load balancers in the launch config, do not require the server to have servicenet configured
None metadata is not allowed
Merge pull request #679 from rackerlabs/as-203-dont-require-servicenet-if-no-lbs

AS-203 - if the user doesn't have load balancers configured, don't fail with KeyError
metadata validation based on nova code
corrected comment
Merge pull request #680 from rackerlabs/metadata-null-fix

None metadata is not allowed
Pinning dependencies of dependencies