Remove `StochasticVariable` class (directly use `AuxiliaryVariable` instead)
Do not call get_device().code_object directly in RateMonitor and SpikeMonitor, use create_runner_codeobj instead.
Fix ratemonitor and spikemonitor templates to make the "needed_variables" argument unnecessary
Simplify ratemonitor and spikemonitor by deriving from GroupCodeRunner
Merge variables and namespace in codegen [ignoring standalone for the moment]
Remove the arrayname attribute from ArrayVariable [still ignoring standalone]
Remove the name attribute from ArrayVariable [still ignoring standalone]
Remove create_codeobject and merge its content into Device.code_object