better isbn validation and hyphenation