Complete overhaul of cron.py and its tests.

- docstrings added for every function/method/class
- added mapping ability, so you can use JAN..DEC and MON..SUN in the
  appropriate fields now
- parsing of fields changed: you can now use comma separated patterns and step
  specifiers side-by-side, the latter will only be applied to the pattern it is
  directly connected to, patterns separated by commas are unaffected.
- added a ParseError excpetion that is raised when parsing of a cronstring
  somehow fails.