state pattern for managing UI. Extra chrome on external urls.