WL#8020: Add a UDF registration service

Affects: Server-8.0   —   Status: Complete

Currently the server requires a bunch of "CREATE FUNCTION ... SONAME" statements
to be executed for each function in a UDF library.

Define a new plugin service allowing e.g. plugin_init() to dynamically register
UDF functions and e.g. plugin_deinit() to de-register them.

Obsolete CREATE FUNCTION ... SONAME in favor of this.

This will allow defining all the functions with a single INSTALL PLUGIN command.

Motivation:

Take a look at e.g.
http://dev.mysql.com/doc/refman/5.7/en/enterprise-encryption-installation.html

There's 9 commands to "install" the individual functions from a single component
with convoluted syntax etc.

If we get this worklog this is how the above page may look like:
http://dev.mysql.com/doc/refman/5.7/en/audit-log-installation.html

A single command. And a way to monitor the installed extensions. Which is not
present with UDF: https://bugs.mysql.com/bug.php?id=71262

Sometimes it's even more complex:
http://dev.mysql.com/doc/refman/5.7/en/firewall-installation.html
This one combines the need for:
1. INSTALL PLUGIN
2. a couple of CREATE FUNCTION SONAME
3. a system table.

We will combine 1 and 2. And will have to work on allowing plugins to handle #3.