MDL-18375 calendar: made userdate and usergetdate abstract to ensure developers implement this functionality in their calendar type
MDL-18375 calendar: placed the require_once calls to the top of the unit test page
MDL-18375 calendar: declare scope of functions in the factory class
MDL-18375 calendar: keep logic involving timezones in core and only pass the final date to the calendar
MDL-18375 calendar: added '\' before each use of the core_calendar namespace