Add QuantityHandler

Similar assumptions as in TimeHandler (see #49):
* ~~The equality field is a simple, human readable string representation.~~
* ~~Ignore lower/upper bounds when searching.~~
* ~~Ignore decimal places beyond PHP's build-in "14 significant digits" string conversion.~~
* ~~StringHasher is used to be able to have a maximum length. Otherwise it would be unlimited since the unit doesn't have a limit.~~
* Order by float value. Ordering by unit doesn't make any sense.
* No unit conversion (for now, may be implemented in a future version).
We will never query for one of upper or lower bound withotu also querying for the other. So it makes sense to have a composite index covering both. As far as I know, MySQL is currently not smart enough to actually make use of both parts of the index in a range query, but we should leave that to the database engine. So, declaring this composite index seems to be the right thing for now. If anything, we should find out whetehr it's possible to provide more hints to the database engine about what kind of index we want (IIRC, RTREE would be good for multi-dimensional range queries).