Async fixes
- vm.$watch is now async
- v-model now unlocks async (so it is properly locked during async update)
- expose Vue.nextTick