Introduce a bunch ob object factories for things like the grid operator
This makes it possible to determine the type of objects like the grid operator from main()
, without knowing beforehand all the template parameters needed to instantiate that type. This in turn enables me to have separate programs for e.g. host and device codepaths, where the programs for the host won't even go through the online compile phase. It will also enable testing different strategies for computation on the device in different programs, keeping those program's sources side-by-side in the same source tree without the need to juggle different branches.
Partially addresses: #54 (closed)