challenge problems in fsharp