added more error-checking functionality and error highlighting for basic info
take 2
try this again
take 4
take 5