A declarative argument parser for F#