This has a bug: NullPointerException when last node needs to be deleted.