Interfaces for IO using Q promises in JavaScript on Node