moved source code reading into SourceCodeReader.java
cache read source strings