made converters their own class so that they can hold state. needed by any non trivial, non static conversion