Updated and simplified TimePeriod, first untested draft.

Changed TimePeriod spec

TODO
* TP's constructors should take start date instead of end date - this is faster and more intuitive, especially when using DT or DTO
* Test TimePeriod with FsCheck

BACKLOG
* Refactor, rethink, clean the added code and make it compile and pass tests
* Add all old collections tests and make a benchmark that runs all data structures (for not to comment/uncomment anymore)
* Implement IReadOnlyCollection<T> interface for read-only maps/series
* Fix FSharpx dependencies. Just copy relevant code, avoid dependencies when possible