[API][ADMIN_API] Fix DB locking issues

VIP assign can deadlock itself or hold the exclusive lock for too long.
With this patch we now:

1. Only lock until we have a VIP
2. Assign the VIP to the device right away in the DB
3. Keep in the BUILD state until VIP is confirmed assigned
  * To do this VIP assign is done after device build is confirmed
4. If the VIP assign fails set the device ID for it to 0 and attempt delete
5. Retry 1-4 up to 5 times
6. Remove the galera deadlock detection since:
  * it was detecting normal deadlocks
  * it was causing worse deadlocks and DB damage
  * we should never hit a state where that activates

This patch also fixes device choice in Admin API during fail-over.

Change-Id: I02f8257e5d871ed76eb82b51aeead8ed8f1bbbda