Remove unnecesary wildcards from dynamic parameter query

Don't force to add .* wildcard at the end of the queryurl when using
Dynamic parameters. The user can add it if necessary, and when using
very short queries (i.e. first level) can result in a lot of undesired
results returned from graphite queryurl, making unnecessary loops in the
each loop for returned metrics.
Replace sorting strategy of dynamic parameters to prevent string-numeric index mess

The assignment of parameters (both dynamic and static) is using associative arrays, which
is BAD. As a side effect, when using dynamic to match agains a portion of hostname (e.g.)
which will contain zero-padded integers, assigning this string as key to the array will
create lots of problems since non-zero-padded integers won't be considered as strings,
messing everything up during array.sort().

This tries to overcome the sort issue by sorting first the keys in a simple array and
pushing them to the associative array already in order. The sort is still not ok but
strings won't be replaced by their array index.

Ideally we should refactor the whole code to avoid using associative arrays, which in js
are simply evil, and this is why.

Also:
There is no need to call array().sort in every iteration of the each
loop. Instead call it only once at the end of the loop.
Use timezone offset for rickshaw hover

Replace hardcoded 1h substraction for the hover information by calculation of tz offset to display correct times.