Create go mode and fix whitespace issues

Fixes #382.
We set additional whitespace mode options in the local buffers for both Go files and c makefiles so that the tabs aren't highlighted. 
Layout of the file taken from other module files, let me know what you think.