Refactoring2

in general we should avoid `ReadFile` or `ReadAll`, CF: http://jmoiron.net/blog/crossing-streams-a-love-letter-to-ioreader/. Not sure if it's applicable there though