added untested delete mechanism
added incomplete delete method
added test methods for almost all cases