More work

Dispatching now works and is async, although not sure if its 100%
correct