coplanar/app: Properly handle route change events without batch number

The route change handler take care of only fireing a single event for
an event batch. This is to get a single event when the route completly
change. Howver event that are nor part of a batch don't have a batch
number, such event must always be handled.
coplanar/calendar: Fix the week to date conversion

When converting the week number to a date we must use the same week
start as the calendar view.
GV/View: In Gängeviertel the week starts on Thursday
coplanar/route: Fix the route merging in can.route.redirect()

Under some conditions the merging performed by can.route.url() seems
buggy. Workaround that by just doing the route merge ourself.
coplanar/calendar: Split the code to get convert the route to a date
coplanar/calendar: Allow sub class to extend the UI with templates

The sub classes can use a templates to add some custom UI around the
calendar view. For example custom navigation links, or some filtering
selection.

The template must call the setCalendarElement() function on the HTML
element that should become the calendar view. The template
environement also provide the bindRouteAttr() funtion to bind a form
input element with a route attribute. The element will then be updated
when the route change, and it will set the route when edited.
coplanar/calendar: Fix the route update when in the default view

The route wouldn't be updated if the route didn't provide a view type.
Fix by using the objects default view type as fallback.
coplanar/calendar: Add a method for the eventRender() callback
GV/Views: Fix the overlapping events in the calendar views

The event content shouldn't be modifed in the eventAfterRender()
method, that lead to some placement bugs. Use the eventRender() method
instead.
coplanar/calendar: Go to the day view when clicking a day
coplanar/calendar: Remove the redirect in the show callback

This thing was causing to much problems, creating loops in some
bugs :/ Instead we now just expends the defaults in setRoute()
and just replace the route with new one.
coplanar/calendar: Always re-render the view on show()

Rendering the events is not enough, if the date changed the calendar
itself needs to be rendered too.
can/route: Increase the can.route.redirect/replace delay

When calling can.route.replace() from a route event callback the
timeout is sometimes not enough, and the new route get ignored.
As a simple workaround we just increase the timeout for now.
css: Remove some long dead code
coplanar/calendar: Add a new UI using a template
GV/View: Improve the calendar views and add some filter for the events
GV/Model: Add 'creator' and 'creation_date' when saving models