Add promise interface for chaining methods