refactored slightly to define the server hooks in a separate package. Both the server hooks and the main framework depend on a common package :first-gen-internal that exports the symbols that are common to the internals of both the server hooks and the framework