function reset has been implemented
function remove has been added
function rename implemented