core: Fix old-style function definitions

And add a warning flag to prevent new ones being introduced.
build: Add more compiler warnings

And explicitly disable a couple which sophiasip triggers with its header
files.