Provisioning refactor

![](http://i.imgur.com/vwMin.gif)