FscHelper: implement F# compiler in FAKE style

The 'fsc' and 'Fsc' functions take as input a function inside which you
can set up compile parameters. Defaults are provided and can be
overridden.

'fsc' returns the exit code of the compile, while 'Fsc' discards it. The
latter can be used inside Target task functions.

Both internally use the 'fscList' function which takes parameters as a
simple list of strings. This function also writes error output, if any.

Fixes #478.
Merge pull request #485 from yawaramin/issues/478

FscHelper: add fsc function
Extract FscDefaultParams and make the Fsc task take file set. - relates to #485
Trace starttask and endtask - relates to #485