AnalyticsEnvironment added

Opening this just to discuss approach for now.

Jon suggested changing implementation from a class-instance backed map, to one with each type explicitly held as an instance variable with associated getter.

Is that the generally preferred approach? Would an immutable jodabean be appropriate?