Don't add worksheets to the workbook when initialize fails

Creating a worksheet with an invalid name would still add it to the
workbook, despite raising an exception.
Worksheet name uniqueness doesn't apply to itself

This constraint would prevent you from creating a new worksheet
with the name that it would have gotten by default.
Merge pull request #155 from nilbus/name-validation

Fixes related to validating worksheet name uniqueness