Work in progress.
Moved all ISO-8601 parsing into abstract Iso8601 class.
Moved isoString() method formatting to Iso8601 class.
Added interval formatting functions to Iso8601 class.
Interval's fromIsoString() still work in progress.
Refactored Iso8601 usage and tests.
Rebased develop.
Merge pull request #55 from koden-km/feature/iso-formatting-period

Feature/iso formatting period (fixes #50)
Added AbstractInterval::period() and byXXX() methods (fixes #3, refs #56).