Fixes #19.

Added lifecycle hooks to DS.save and DS.create. #7
Closes #7.

Implemented all lifecycle hooks, including tests.

Cleaned up use of promises in async methods.
Merge pull request #20 from jmdobry/feature-lifecycle

feature-lifecycle