Tidied up SourceFile
Swiched to whitespace do blocks for parse