Better API naming and support for cancellation added.