Updated an existing set of directives. The returned
set of Directive starts with copies of Old. If a
member of Old is autoload/2 or use_module/2, new
dependencies are added at the end of this list.
New dependent files are added after the modified
copies of Old. Declared dependencies are never
removed, even if no proof of usage is found.
If no directive(+Directive)
option is provided a
default is determined from the given directives.