Don't allow undefined symbols in neither modules nor shared libraries.

I completely forgot that I never updated #25, so I've updated it now with the change you suggested. Unfortunately I've (semi-)accidentally deleted the old branch and recreating it immediately afterwards is apparently not sufficient to reopen that PR, so I'm opening a new one.