it should be a hard requirement that patterns are registered at initialization (as far as I can tell there's no reason for lazy initialization of patterns)
since this is the case, we can run the process with an instrumented mu (proxyquire), which could allow us to grab all patterns and functions
we can use these patterns (and functions) to generate api doc template