I don't understand. The interactive spec of #'load-library, in
lib-complete.el in core, uses #'read-library, which already provides
completion. M-x load-library RET TAB will give a completions buffer with
the possible libraries in the path.
This would be convenient for reloading a newly updated package.
Of course this isn't 100% safe since it's not possible to unload a loaded
package, but it should be way more than good enough for government work.