refactor provisioner for ccng v1 and v2 api

this commit is to add a functionality for provisioner to support
both v1 and v2 api of cloud controller.

1. extended the provisioner code with different ways of caching
service handles; v1 treats instance handles and binding handles
as the same while v2 caches them in two different variables

2. update the code in catalog manager v2 so it is able to allow v2
provisioner to cache all handle information from cc rather than
convert them into handles as in v1 provisioner

3. added unit tests accordingly