IMPORTANTE: la clase Tipo es innecesaria.
IMPORTANTE: no agregar funcionalidad no solicitada

En particular, veo que contemplaron que el usuario tenga un saldo
que no debe superar. No veo ningun rastro de esta funcionalidad (salvo en el pseudocódigo
de su entrega anterior; se me pasó marcarselos allí)
Agregando comentario sobre intercambiabilidad de categorias
IMPORTANTE: sobre el modelado de SingletonID