I think, the main goal was to hide `resolve` and `reject` methods.