a lot of proposals leads to a lot of code improvements:

- remove global site and language and place it into instances
- replace site.language() with site.code with is needed in core
- use pywikibot.warning instead of pywikibot.error
- remove unused imports: sys, pagegenerators, tzoneFixedOffset
- remove old md5 import. md5 is deprecated since 2.5 and we need
  py version 2.6.5 or higher
- reorder imports
- do not longer rename md5
- remove message method and use i18n.twtranslate directly
- use page.getReferences generator directly
- do not redefine reserves python words:
  replace str by string, get by get_attr, put by put_attr,
  vars by params
- use standard method string.endswith(char) instead of string[-1]
- de-uglifying rewrite of str2size method using regex
- use only one TimeStripper object per site which is instantiate
  once in PageArchiver
- Therefore DiscussionThread get the additional timestripper
  parameter while instantiating
- follow core rules to instantiate a Page and use source instead
  of title and global site
- DiscussionPage may be core like created by having a page object
  as source
- DiscussionPage may be created without archiver for testing
  purposes (described inside the code)
- use core-like page.text and page.save()
- showHelp() if arguments are insufficient
- use pywikibot.exception() for Exception traceback
- test suite added

Change-Id: I6ea94a1558decae143e254b75ce62e8c0fc6f276
Merge "a lot of proposals leads to a lot of code improvements:"