Clean up option sanitization and globalize invalidOpt and invalidContent methods
Fix destroy logic to ensure it doesn't error out within show/hide handlers. Use = null instead of delete
Restructing of core library

Migrated to a proper prototype inheritance structure, resulting in much better
usage of memory overall, with minimal object creation. This should prove to be
a much more efficient implementation than prior releases.

Nothing as changed on a functional basis, simply restructuring of the internals.
Callbacks which call api methods directly will no longer work, and must be wrapped
in an anonymous function call i.e.

.bind('click', api.hide) -> .bind('click', function(e) { api.hide(e); })

Otherwise, everything should function as before as specified in the docs.