Adding F# solution (not finished yet)