src: add reader and sequence implementations along with an expanded main
reader: add tests