Refactored state to use State objects (and subclasses) instead of Strings. Field filters are applied when you load a trace
If there are multiple references to the same object, they become multiple references to the same State, and are sorted out when printing.