Allow a callback to be set when calling ::define.

This callback will be called after the object has been created (and
saved in the case of ::create).
Trigger callback after object has been created/saved
Test callbacks are being called
Merge pull request #276 from scottrobertson/callback

Callback