Added deferreds to BaseModel and BaseCollection

The model or collection should be resolved the first time it is synced
(via finishSync). The BaseModel and BaseCollection also now extend
SyncMachine and call beginSync() before syncing and finishSync()
afterwards.