copy-vocabulary returns a new vocabulary that contains all the micros and macros contained in the given vocabulary.
NOTE: copy-vocabulary literally makes a copy of the given vocabulary. Any changes made after the copy operation will not be seen by the copy. Thus, the copy should be made only when the programmer is certain the vocabulary being copied has all the appropriate contents.