Refactored SmartCollection into CallbackCollection and moved into
/src/main/java instead of /src/test/java.  Introduced builder pattern in
CallbackCollection.