Avoid duplicate definitions of pointers to arrays.
Handle setting arrays to scalar values in standalone code better.
Change the way, implementations for functions are added: if an implementation is registered for `cpp`, it should be added both for `WeaveCodeGenerator` and for `CppCodeGenerator`. For that to work, `CppStandaloneCodeObject` (the only `CodeObject` using `CppCodeGenerator`) also has to be in the list of codegen targets.
Some further cleanup, examples in `dev/ideas/devices` now mostly work, `cpp_standalone_run_example` needs a more fundamental overhaul, though. Some features (e.g. summed variables) are only tested in examples not in the standalone testsuite -- we should certainly change that.