runtime: migrate to a cleaner array model
major refactoring of Reader runtime