Refactor validation checks

Deleted extra transaction classes to keep the code simpler while we are
working out the design patterns.