Those class_exists() check don't work with class manifests.
Check the logic in ClassManifestVisitor - it just parses PHP until it finds
class definitions. Which means you'll have those files in the manifest,
but when dev/build tries to instantiate them it fails
with an InjectorNotFoundException.
We could argue that this should be fixed in core,
but I'm not sure that this style of conditional classes
needs to be supported.
Added composer.json file which will help this module for submission on proposed extension.silverstripe.org website. Please add more fields according to requirements.
For more information please visit at http://extension.openbees.org/instructions/