New style (similar but slightly more abstracted) of version dependent code
Necessary changes are now moved into a VersionCompat_xyz.H file, so that they can be edited separately as needed. Macro definitions are used to pass parameters to the classes that require them. Care will need to be taken to either a) always define the macros, or b) ensure the error message on '/home/christian/OpenFOAM/christian-2.3.0/platforms/linux64GccDPOpt/lib/libmyDynamicMesh.so' is up to date. is clear as to the problem, if they are not defined.
At present, OpenFOAM versions older than 2.0.0 will not have anything defined, and so compilation will fail. I suspect that the lower limit is much lower, and so probably the <2.3.0 defines can be used for a larger range of version numbers than just 2.0.0 -> 2.2.2