need to split opencv elements out of Nitrogen client for agent use
don't save session subscriptions
add subscription service tests
add switchState message type