Started using exceptions for move validation