I think writing functional tests in a given-when-then style manner is a great idea. Tests tend to be clearer and more precise when written this way. There are quite a few tools too choose from. Cucumber by Aslak Hellesøy seems to have a lot of momentum these days and is an acceptance testing framework definitely worth considering.
However, the customer I work with has been using Fitnesse for a number of years now, which means people are familiar with this framework. So going for the new Fitnesse Slim framework seemed like a step in the right direction.