User calendar iCal and RSS serialisation

This builds on a couple of other PRs, so don't review this just yet. Although feel free to have a high-level look if you wish to
Yes, it's more pragmatic to have it on the User model