Make `VariableView` more robust for subexpressions that refer to external parameters

This fixes #313 in the way we discussed. See `test_subexpression_with_constant` in `test_neurongroup.py` for examples of what works and what does not.