refactor suite definition
move backend behaviour into a separate file