Working refactor of scanning and column parsing