Fix published_at setting without use of publish!

Before, published_at was only set when you explicitly called publish!
on a page. It wasn't set when a user just edited the page properties
and changed the public flag to true. This commit changes this. Whenever
a page is made public, it's published_at timestamp is set if it wasn't
set before.
Merge pull request #639 from thomasjachmann/3.0-stable

Fix published_at setting without use of publish!
Use helper method to render complete label

This also renders hints and delete links.
Let a link use its link title instead of the url
Add ability to render complete global page

This also renders the page layout associated with the page, which is
better than just rendering the page's elements using #render_elements.
Make cross site linking simpler

Before, it used login_url to go to the login page which was
prepopulated with the current user's name. This doesn't work if you use
a non-standard authentication system. It should respect
Alchemy.login_path but even this isn't really working since the form's
fields could have different names than the ones used here. So better
just link to the dashboard (the site you're currently on) and let
alchemy redirect to the login page. We lose the user name prepopulation
but also lose the additional step of going to the login page if the
user is logged in already.
Allow render_navigation to omit page slug classes
Fix folding for non-AR user classes

Make sure, your User implements an #id method!
Let rails do the error page rendering

After the last change in the render_404 (always rendering without
layout), this basically just did what ActionDispatch::PublicExceptions
(the default exceptions_app) does. Without this custom code, the app
has greater flexibility, eg by being allowed to set a custom exceptions_app.
Update whole element upon save in editor

Before, only the element editor's head was replaced. This may lead to
problems when the editor body or one of it's essences' editors doesn't
just display inputs. We had one problem where we displayed an image of
a referenced model. This was never updated. Now it gets updated since
the whole editor block will be regenerated.