Allow setting a custom compiler and custom cflags in the smarttpl compiler

Also fixed the return value, it'll now only be 0 (success) if all of your
input files were compiled correctly.