Convert to extension

Due to transparency issues in an object-based wrapper, an extension has
been written that hacks Module and introduces the functionality at a
class-level without altering the values of the attributes themselves.

Use the new .mutex() method in any module or class and pass the desired
attribute symbols (no @ prefixing at this time) to wrap them.  The
extension will optionally define and create a reader method if the
analogous instance variable does not yet exist.