Performance/error avoidance for record refreshing.
Performance/error avoidance for record refreshing.

* Only refresh records that the store already knows about. Previously
  the change watcher was doing a findAll for each change, which would
  load every record of the type, even if it wasn’t already loaded.
  This is bad for applications with a large number of records, and isn’t
  great for applications with a small number of records but a large
  number of changes.

* Don’t attempt to refresh records that are dirty.
  If there are changes that haven’t been persisted yet, leave them in
  place and allow the code that saves them to receive and resolve the
  resulting conflict.

* Don’t attempt to refresh records that aren’t fully loaded.
  If a record is in the middle of being saved or loaded, attempting to
  refresh it will result in an error. Changes for records in these
  states are generally local changes, so this won’t hurt anything.

Based on an initial patch by @moses.

leojpod/ember-pouch,nolanlawson/ember-pouch,mattmarcum/ember-pouch,pouchdb-community/ember-pouch,mattmarcum/ember-pouch,keppy/ember-pouch,atsjj/ember-pouch,keppy/ember-pouch,stevebest/ember-pouch,HospitalRun/ember-pouch,stevebest/ember-pouch,olivierchatry/ember-pouch,HospitalRun/ember-pouch,olivierchatry/ember-pouch,nolanlawson/ember-pouch,OleRoel/ember-pouch,fivetanley/ember-pouch,pouchdb-community/ember-pouch,atsjj/ember-pouch,fivetanley/ember-pouch,rsutphin/ember-pouch,leojpod/ember-pouch,rsutphin/ember-pouch,OleRoel/ember-pouch,greyhwndz/ember-pouch,greyhwndz/ember-pouch