Adding a Deferred output-only AutoFilter

This test case seems to throw a bad_weak_ptr exception, potentially due to invalid setup operations occuring inside of ObjectPool
Object pool should only attempt to initialize after shared_ptr is created

Sometimes, types in the object pool which inherit enable_shared_from_self might need to call shared_from_this during their Initialize callback.  In order to ensure this callback functions correctly, the actual shared pointer for the object must be initialized before the object itself is initialized.
Merge pull request #18 from leapmotion/bug-deferreddeconly

Object pool should only attempt to initialize after shared_ptr is created