Break validation out into it's own function
Add callback for validation

This seems nicer.