Add code_gen tool. 
Move shared code to new files.
Fix spelling mistake in finsig_dryos.c output.
Add code_gen files for G12, G1X, IXUS310, SX30 & SX40.
Updated output files for G1X, IXUS310 & SX40 to remove init_file_modules_task.