Support simultaneous values and units in Feat

The current change enforces a proper order of preprocessors.
When setting, units is done first. When getting, units is done last.

This change also modifies the way preprocessors are stored. Now
both get and set preprocessors are stored in the same order, but
a reverse iterator is used when applying the get preprocessors.

Close #25