[New] TimedStates are now properly incorporated into the Strolch Model

The TimedStates have been added to Resources and can be added, removed and retrieved using the following methods:
- addTimedState(StrolchTimedState):void
- removeTimedState(String):<T extends StrolchTimedState>
- getTimedState(String):<T extends StrolchTimedState>
- getTimedStates():List<StrolchTimedState<?>>
- hasTimedState(String):boolean

Also created a new Boolean StateVariables type

The TimedStates are added to Resources using the StrolchTimedState interface and there is a concrete implementation for each type:
- BooleanTimedState
- IntegerTimedState
- FloatTimedState
- StringSetTimedState

Each timed state is tested in a unit test
Each timed state is (de)serializable from/to XML
Merge origin/master