Re-work so that model initialization is properly handled. We must use the mongoose module passed in by the callee and we need to make sure we don't double-init.