supports len()
supports delitem
except and raise in separate blocks

To avoid complex error message saying an exception occurred while
handling an exception
I'm learning unittest
adds gitignore