Part 1 of the code cleanup
Code Reuse!
Little var rename
More Cleanups
More code cleanup
Comming a SLN to make building more simple