Adds spaces in type casts (minor)
Adds range functionality to for

An attempt to resemble python style "for i in range(x)" with
for (auto i : range(x)) { ... }