My class-based solutions are more prone to failure than other solutions I've used before. It always gets more complex than it should.