Added a FormErrorException + associated FormErrorFactory + Tests