Add optional time argument to calendar method

Mostly useful for running tests when you need to stub out time as a
specific time. Or for if you want to get "calendar" style formating
relative to a time that is not "now".
Merge pull request #1554 from Goldbely/feature/calendar-accepts-time-argument

Add optional time argument to calendar method