Translation cleanups
A number of cleanups and disentanglements to the current translator implementations:
- Extract a real abstract
Translator
interface - Remove the mapping based approach from the
FloatTranslator
to make it actually accept floating point values unequal exact integers