Distinguish between 'proper' constants and 'computed' constants (#112). Also some minor cleaning up.

This is very important in case the user modifies a model parameter
which requires recomputing constants. The CellML API doesn't
distinguish between 'proper' and 'computed' constants which means that
we couldn't recompute 'computed' constants without resetting all the
'proper' constants too (something we don't want to do since we want to
allow the user to modify those!). Ideally, the CellML API would
distinguish the two of them, but no time to wait for it so we do it
ourselves.