Fix small mistake axisOrder -> xAxisOrder
[#4] Allow multiple filters set through the form

Right now there're 3 hard-coded pairs of filter_field and filter_value, but we
can add more afterwards using JavaScript.

All pairs have the same input name (filter_fields and filter_values). Python
will join them for us and give us two arrays (one for each), with the same
order as defined in the HTML.

With this, we can link the fields to value by their indexes: the 3rd field will
have the 3rd value, etc.

In the JavaScript side, we simply loop through the filter_values and, if
they're different than "", we check which field they belong to and add as a
filter, keeping the order they were defined in.
[#4] Override filters through the URL

If the filters are:

```
{
  "region": ["Pakistan", "Punjaab"],
  "year": [2012, 2013]
}
```

And you add to the URL ```?filter_fields=["region"]&filter_values=["Bagh"]```,
they'll end up as:

```
{
  "region": ["Bagh"],
  "year": [2012, 2013]
}
```

(i.e. only the fields that you're setting in the URL are overwritten. All
others are kept untouched)
[#4] Filters in the URL are defined as "filters=field:value|field:value|..."

This makes the URL more readable, and we follow OpenSpending's pattern.

One problem is that the value can't have colons in it, which are needed when
filtering by datetime (i.e. 2012-01-01T13:05:32).