cleanup API and add generic "parse" methods that both senses and parses