add remove by name method
clean up
update doc