added subformats support, some structural changes
added first experimental formatter
it can only read files table for now (hopefully)