add functions to allow users to add menu items without overriding the entire parent function
changes to error handling on link and unlink functions, to avoid any errors being reported that we don't care about
build