First state of UI rewrite, reimplemenation of agent status displays

@abnanda1 @DamianEdwards @davidfowl @moozzyk 
Talked to Micah about this - we have the null checks because the data may not be present when the page is reloaded but it will later be updated. Ideally we should populate the model initially if there is no data present but the code is not ready for this yet.