make function parameter to promise.new optional
document new promise module