finished cleanup and got all the implementations for contactlistener
working properly finally