How can I safely modify the integrated functions of the system through a package? In particular, how can I reset a built-in symbol to its default definition?

I am trying to add functionality to some of the integrated functions of Mathematica in a particular package that I am creating, and I am not sure which is the best practice.

I'm not trying to overwrite any functionality, just add it where it is not yet defined.

I start my body from the package with Check out["packagename`*"];Clear all["packagename`*"]. Clearly, however, I do not want to erase the definition of the system! However, I want to reset the symbol to its default system definition before adding my definition, and I do not know how to do it.

I would also appreciate any advice on best practices to add this functionality! I'm willing to use a typical : =, but if there are better ways, I would certainly be interested.

Thank you!