First pass atat converging upon desired load balancer state
Upgrade characteristic requirement, fix some bugs
Collaps DesiredLBConfig and ActualLBConfig into LBConfig and LBNode (thanks @manishtomar).  Also add tests for converge_lb_state
Merge branch 'master' of github.com:rackerlabs/otter into convergence-basic-lb

Conflicts:
	otter/convergence.py
	otter/test/test_convergence.py
Add function for mapping load balancers to servers
Merge branch 'master' of github.com:rackerlabs/otter into convergence-basic-lb

Conflicts:
	otter/convergence.py
	otter/test/test_convergence.py
Tests for adding load balancer steps to converge()
No reason for load balancers to be mapped by load balancer ID - just take a list of node mappings
Change converge_lb_state to take lists, because it is the only thing that needs  to look up configurations by (lb_id, port)
Do not need mapping of LB stuff to server IDs at all - can just map by address
Change the ordering of some imports to be more like merged master, so diff is smaller
Remove 'current_lbs' attribute from 'NovaServer' - thanks @lvh
Change the 'desired_lbs' default attribute to be a factory - thanks @lvh.  Realized that this should be a list, as per how '_converge_lb_state' works
Add test to ensure only active non-deleted servers get their load balancers converged
Change groupby in lbs_by_address to not be curried, thanks @manishtomar
Change 'private_address' to 'servicenet_address' to be more explicit about what network it is - thanks @manishtomar
Sentence that makes sense in docstring, thanks @radix
Change node condition and type to be NamedConstants - thanks @radix
Add test that adds, removes, and changes load balancers at once - thanks @manishtomar
Fix LBNode docstring - thanks @manishtomar