(#1619) - allow methods to return promises