Easily create multi-threaded asynchronous functions with callbacks using pure CFML