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

I commented to test it first. But yeah, it can be updated. I was not sure how much it will help to have `nova_id` while it is building.