Added an "unexpectedChangeSets" command.

A changeset is "unexpected" if it does not exist in the passed changelog (after processing includes and so on). This command lists "unexpected" changesets that have been executed on the target database.

This pull request is based on the liquibase-2.0.3 tag, but applies cleanly to master as of 20333bb46657ad7663e1050b693b5ddf657159c1.

My day job would like a command line this both for auditing and for working with old versions of their app -- it's nice to be able to verify that the checked out DB scripts actually correspond with the state of the database.