initial move to using a dedicated schema file, instead of using file headers.  improved error checking slightly