The following was copied from http://mahoro.rubyforge.org/, as a way to
provide offline documentation for mahoro (the library isn't documented
anywhere else).

  Reference

   Mahoro.compile( path )

           path is the path (or colon-separated paths) to a list of
           non-compiled magic databases. Compiles the files.

   initialize( flags = Mahoro::NONE, path = nil )

           flags may be one or a combination (bitwise or) of the following:
           NONE, DEBUG, SYMLINK, COMPRESS, DEVICES, MIME, CONTINUE, CHECK,
           PRESERVE_ATIME, RAW, ERROR. Please refer to magic(3) for more
           information.

           path may be the path (or colon-separated paths) to a magic
           database. Leave nil to use the default.

   file( path )

           path is the path to a file. Returns the type of file as a String.
           To return a mimetype set the flag MIME.

   buffer( input )

           input is a buffer. Works just like file, except reads from input
           instead.

   flags = flags

           flags is one or a combinatino of the flags specified above.

   valid?( path = nil )

           path is the path (or colon-separated paths) to a magic database.
           Returns the validity of entries in that database.

   load( path )

           path is the path (or colon-separated paths) to a list of compiled
           magic databases. Loads the files.
