Sorted the add_directory() directives.
Changed BasisFactory from a pure static class to an instantiated class with a static instance, accessible via BasisFactory::basisFactory().  One step on the way to further flexibility, in particular user-replaceable basis functions.