The big change for this release is direct access to shared libraries. Traditionally, emacs has executed binaries directly for all its external interaction, using stdin and stdout for all communication. Now it will be able to call libraries and use their native APIs rather than just two text streams.
This had been long resisted on the grounds that this feature could be used to link emacs with non-free code.
From the ChangeLog:
** Emacs can now load shared/dynamic libraries (modules).
A dynamic Emacs module is a shared library that provides additional
functionality for use in Emacs Lisp programs, just like a package
written in Emacs Lisp would. The functions 'load', 'require',
'load-file', etc. were extended to load such modules, as they do with
Emacs Lisp packages. The new variable 'module-file-suffix' holds the
system-dependent value of the file-name extension ('.so' on Posix
hosts) of the module files.