Finalizing restructuring

some markup changes, some prevention of potential NPEs, added experimental FileReader option, made code more readable