First off: awesome project!
I couldn't help but notice that some functions have a lot of nested callbacks. Maybe it would be an idea to abstract the nesting out via an async library like async. This way you could separate the logic more and use optimizations like parallelizing batches of queries to bitcoind.