implementation of issue #79
Implementation propose of issue #60
simplified Range removing Category and
removed field reversed
- rebase to ceylon/master with negative periods
- implementation of period and duration accordling
fix for DateTimeRange iterator
nextByStep and previousByStep refactored
better name for imported toplevel methods
removing tabs and unnecessary spaces
stepBy in ceylon.tima.Range interface
changed gap and overlap to return Range|Empty instead of Range|Null
changes to apply rules as suggested by Roland Tepp:
GAP

* AB < CD
12 gap 34 = (2,3)
12 gap 43 = (2,3)

21 gap 34 = (2,3)
21 gap 43 = (2,3)

* AB > CD
34 gap 12 = (3,2)
34 gap 21 = (3,2)

43 gap 12 = (3,2)
43 gap 21 = (3,2)
added empty gap and overlap test
removed docs, waiting to see if new rules are going to be accepted
refactors based on @luolong comments
merged changes from Diego