Server table spike / remove GroupState (in progress) - review

This has changes to remove `GroupState` and replace it with separate table to store servers. This way the group is going to be locked only when executing policy or changing min/max. It is not going to be locked on every server becoming active. I've tested this and group creation, scale up and down is working at very basic level. `server_id` in code means Id of server is servers table. It does NOT mean nova server id which is why all references of `server_id` that refer to nova id has been changed to `nova_id`. 

Still lot of things to be done:
- [ ] REVIEW!
- [ ] Implement changes to store policy execution time in policies table
- [ ] Store group execution time in groups table
- [ ] `remove_server_from_group` needs to be changed 
- [ ] Tests

Presumably it doesn't make a lot of sense to only allow this operation atomically (plus, it'd be really hard to do regardless). So, probably do what gatherResults does: return a list of (result or failure)s.