[WIP] Refactor period instantiation to manage alternate period classes

TODO list :

* [x] Implement a factory class
* [x] Use the Symfony option resolver to manage options (class names, first weekday)
* [x] Remove all period instantiations and replace by factory calls
* [ ] Enhance tests code coverage
* [ ] Refactor
* [x] Bump version to 1.1
* [ ] Rewrite obsolete parts of documentation
* [ ] Review, review and review