state management sorted out more intelligently, using pointers for mutating state object inside methods now.