Project Euler again, this time with a functional approach using F#