Const mutator

This branch adds a mutator for the const node.

@mbj this does get a bit more aggressive with reorganization that earlier commits. I moved variable access and assignment under a new namespace. I don't know if the names make sense to you.