SoftwareDeployments make servers property updateable

Allow the servers list to be updated, which will cause an update
of the resource group instead of replacing it.

This looks inconvenient to test in the unit tests due to needing
to create a coupled nested stack (which will further impede the
decouple-nested work), so I'll post a followup patch with a
functional test instead, if that's viewed as acceptable.

Change-Id: I1714d2cef2d0edbeb82c16e5a83acc458009bd47
Closes-Bug: #1389178
Move common functions into functional test base-class

The list_resources and update_stack are generic and likely to be used
in multiple tests, so move them into the test base-class.

Change-Id: I20b5399212a3dde514e0785b1fc91be2c30cba04
Further split ASG code.

This patch splits AWS and Heat version of AutoScalingGroups into
separate files and renames the autoscaling.py to instance_group.py.

The ugly class hierarchy will be fixed in following patches.

Change-Id: I4b776e3f4b74df3e083fcc6f8ba583822ca16580
Implements: partial-blueprint reorg-asg-code
Merge "SoftwareDeployments make servers property updateable"
Merge "Move common functions into functional test base-class"
Merge "Further split ASG code."