util: BinaryReader now supports "if" tags and Validateable interfaces.

@dskinner, some of this might be of interest to you