Separate the sync-related methods to allow explicitly passing in the sync method

Fixes https://github.com/AmpersandJS/ampersand-model/issues/7

This is a proposal for how to implement the separation of sync methods and model code.
Reasoning behind it is written in the issue referenced above.