Merging in my changes

Sorry for pulling in everything at once, but I'm not that much of a git expert that I know how to separate them in retrospect. It's not that many changes anyway, so I hope it's ok.

Here is an overview of what I've changed (that has not yet been merged):
- `parse()` accepts `page` as well, to parse the content of a page directly without grabbing the text first
- `logevents()` accepts `action`
- `pages[]` accepts numeric page id as well, so you can do `site.pages[pageid]`. The `type(name) is int` checks are all related to this change
- new method `redirects_to()` to resolve redirects, and the slightly different flavour `resolve_redirect()`
- support editing sections