State Management support

Functionality to set different states for the same screen. Additionally, it would be great to have a way to allow External Data to control screen state locally.