Allow DevStack to retry DNS queries to handle async CRUD

With pool-manager, records are created/deleted asynchronously, so we update
the DevStack code to implement a retry+timeout on DNS queries.

Additionally, move exercises only functions into the exercises script.

Change-Id: Ic94fac4c4a2845780c24e9489d39b4f2f39a1d55
Closes-Bug: 1398786
Merge "Allow DevStack to retry DNS queries to handle async CRUD"