Add content keyword:

The new 'content' keyword allows to set the content for the
current response. This is to accommodate asynchornous functionality
added in the future.

Until now, setting the content was basically done by returning
content from the route subroutine (using 'template' or data which
is then serialized by a serializer), or you could go to the request
directly - which is generally discouraged, because it goes into
the core without the DSL layer.
Ignore route response if content set using keyword:

Since the response from the route is the content in a response,
even if you set the content using the 'content' keyword, it still
overrides (and overwrites) the content attribute in the response.

Instead, we add a predicate and a clearer, and we remove the
default value of the response content.

We then check if there's a value provided using the 'content'
keyword. If yes, we will use that as the value. Otherwise, we
use the response from the route.

When a request has been passed, we actually clear the content,
because the next response has to set the content. This will not
allow setting the content and then passing. Tricky, but passing
is bad anyway.
Merge branch 'feature/content-keyword'
added documentation
reflect change
Merge branch 'feature/content-docs'
it's log_format, not logger_format
reflect this in the migration document
reflect changes
Merge branch 'doc/log_format'
Allow creating Dancer2::Core::Response from more sources:

You can now create Dancer2::Core::Response from Plack::Response objects
and array references. The idea is to allow normalization of different
types to Dancer2::Core::Response.
Merge branch 'feature/from-plack-response'
rename from_array/plack to new_from_array/plack
proper naming
Merge branch 'cleanup/rename'
Fix redispatching requests losing data:

When using the deprecated dispatcher (using `psgi_app`), requests that
passed between apps (because they haven't matched a route in an App)
will lose their data because the previous matching process already read
the body from the environment.

There are two ways of fixing it:
* Reset the body's filehandle pointer.
* Save the generated request object and use it again.

Because I would be afraid of playing with filehandles and
possibly-cached filehandles, and hell, it would actually make the
dispatching faster because we're caching the request we generated,
and it really is the same request, so there's no reason not to do so.

This fixes GH #723.
Merge branch 'fix/gh-723'
bump version 0.152000
Merge branch 'release/0.152000'
Fix test failure when paths contain regex metas

t/classes/Dancer2-Core-Role-HasLocation/base.t fails if the build path
contains regex meta-characters (like '+' in my case).
Disable pattern metacharacters when removing $basedir.