started consensus refactoring \o/