DONE: full basic functionality
TO DO: cat numbers with definitions at lookup()