refact(doc-processor): remove deprecated processor init methods
feat(dependency-sort): add new utility function

This function will sort a list of objects based on their name and one or
two properties that define 'before' and 'after' dependencies.
refact(doc-processor): pass processors, etc. as direct params rather than config

Previously the doc processor extracted the processors to run from the config
but this change moves the responsibility for providing the processors, and the
"services" (injectable objects) to the caller.

BREAKING CHANGE
feat(package): add new Package type

Objects of this type store information about a package, including its
name, processors, services and configFns.