11. A computer system comprising: a processor; and system memory storing executable instructions which, when executed by the processor, perform the following functions: creating an enhanced native control object by wrapping a native control object with a wrapper that defines one or more extension methods, the one or more extension methods being configured to be called by an application level add-in to add and remove document level controls from the native control object for documents opened or created in the application, the application level add-in being configured to act under a first root object corresponding to an add-in class; determining, by the application level add-in, that a particular document has been opened or created in the application; determining, by the application level add-in, a class of documents for which document level controls should be added; determining, by the application level add-in, that the particular document that has been opened or created is in the class of documents; based on determining that the particular document is in the class of documents, the computer system determining, by the application level add-in, and that a particular document level control is to be added to the particular document; adding, by the application level add-in, the particular document level control to the particular document by calling the one or more extension methods of the enhanced native control object, the document level control being configured to act under a different second root object representing the particular document; monitoring, by the application level add-in, the particular document to determine when the particular document is closed; and upon the application level add-in determining that the particular document has been closed, the application level add-in removing the particular document level control to prevent the particular document level control from further executing by calling the one or more extension methods of the enhanced native control object.
12. The computer system of claim 11 wherein the functions performed further include caching the enhanced native control object.