Added wrapper so that Database.open() on a database that is already opened doesn't throw an exception. It just goes about its business.
Arguably, this should be done with a fix switch.
Merge remote-tracking branch 'origin/jesse' into nathan
THAT BLAST CAME FROM THE FORMULA PARSER! THAT THING'S OPERATIONAL!

Added deprecation annotations for old DbDirectory methods
Added better shielding for Database.open() when database is already open (does a log level of FINE if you really want it to)
Added Session.getMailDatabase() for completeness
Deprecated DatabaseIterator, since the DbDirectory now caches the database metadata.
Added a comment to the Formula parser to clarify its purpose
Made formula parser favor the assumption that identifiers that aren't defined locally through assignments must refer to fields.
Fixed bug in statement type tracking for Formula parser.