Initial async Messaging::Result - kinda like a future, but with handler procs for each type of result