Implements promise and RemoteModel methods.

Why self ? What are you trying to achieve ?