Move the functional tests into a standalone app