> Is this something I should be looking at?
Yes, this might be a good start. The problem is small, well defined,
and it would help you start with the implementation details.
Handling of hyphenation data structures is mainly in troff's source
code file `env.cpp', with some minor bits in `input.cpp'. As a start,
you might simply walk line by line with a debugger, setting an initial
break point at `process_input_stack' and start debugging with the
third call (the first and second call handle the start-up files
`troffrc' and `troffrc-end').
Werner