1. A document management system comprising: a module database configured to store at least a first module and a second module; a search engine configured to allow a user to search for modules in said database according to one or more search rules; an access control engine configured to control access to said first and second modules based on different user classes according to one or more access rules; a construction engine configured to use one or more of said first and second modules to construct a document according to one or more construction rules; and a module review engine configured to allow a subscriber to review and approve a new version of said first module during a review period, said construction engine configured to use a prior version of said first module for documents assembled by said subscriber until said new version has been approved, said document assembly system configured to prohibit access to said prior version after said review period has expired.