Fix a bug that prevented the creation of Hyphened ISBN-10, improve the code and add more tests