Whitespace tidying
Add validator
Abstract classes to simplify runners