Make recordMetadata only take one $metadata arg.

The two $elementSetName and $elementName args are combined into just
$metadata. If that's an array, it's an element set, element name combo.
Otherwise, it refers to an item "property." (like ID, for example).

This should open the door to removing the custom code for things like
collection() and exhibit(): they can just use recordMetadata, even
without using the Element system, since $metadata can be a string. The
current switches over possible metadata types for those records would
just move to the model's getProperty.

This change also affects item() and item_file(), as their signatures
mirror recordMetadata's.

Further work on #187.
Fix item_file stragglers in LinkFunctions.
Fix RecordMetadata to work with non-Element data

The big change here is that, internally, RecordMetadata no longer keys
off of whether or not what it got back was an array. Previously, it
assumed that any "property" would never be an array, so it called
ElementText methods on any elements of a returned array. This was a
barrier to using this helper to replace collection(), since collectors
is an array property of a Collection.

Now, RecordMetadata simply checks to see if the "text" it's dealing with
is actually an ElementText record. Aside from enabling array properties,
this has the happy side-effect of making the code a lot more readable
and less crazy. This also made it easier to apply the normal "index"
filter up-front, so we no longer waste time filtering and processing
texts that we're going to throw away.
Replace collection() internals with recordMetadata

Taking advantage of f2c9e and d5854, recordMetadata helper can now be a
drop-in replacement for the internals of the collection() helper.

All similar helpers should be workable in the same way.

Ref #187.
Fix up RecordMetadata documentation.
Pick up more item() and friends stragglers.
Make all view helpers extend the Zend abstract.
Remove the useless 404 and 403 routes.
Add 'locale' filter, fix #169.

This lets plugins set the interface locale, so a locale can be
autopicked based on the database, or the request, or really anything.
Add overrideable methods for success redirects.

Controller subclasses can override these if they want to alter where the
redirect goes without reimplementing the underlying actions.

Fix #105.
Use built-in addAction for ItemTypesController.
Rejigger base Controller for readability/standards
Remove magic from plugin broker.

You can't use magic __call() to call a hook anymore, and the Filters
methods are simply included in the same class instead of delegated
through __call().

The result is a much more obvious interface where code directly calls
against the broker to fire a hook.

See #187.
Delete most of the index.html files.

Exceptions are the ones in the archive subdirectories, since we need at
least one file in each for Git to track them, and the install
directory's index.html, which actually serves a purpose.

The rest of them are just a holdover from when our rewrite config
didn't pick up URLs that point to real directories.
Fix #194, force some adapter to be configured.
Restore mysteriously missing parenthesis.
Remove RecordType.

Record types are stored as strings in the element_set and element_text
tables now. The 'All' record type has been replaced by NULL in
element_sets.record_type.

See #115.
Kill dangling reference to Omeka_Output_Xml.

The class (which was empty) was removed, but Omeka_Output_Xml_Abstract
was still extending it.
Catch more prefix stragglers.
Fix #192, remove SearchItems helper.