Major Refactor, Started Conditionals, Testing Stuff

Did a major architecture refactor to allow new conditional handling
Added conditionals and statements, still adds an extra new line but can
fix that later
Added improve testing with a file compare that compares all output files
to an expectation