Fixed [FMDatabase openWithFlags:] so it does not reopen the db unnecessarily

This is just copying what was done in [FMDatabase open:] by return YES if the database already exists. This solves a problem with issue #211 where any connection changes being made in the [FMDatabasePoolDelegeate databasePool: didAddDatabase:] would just get reset as the database would be reopened on each pool call. Likely inefficent as well.
Added in support for userVersion property

This uses '#PRAGMA user_version' to store/retrieve a uint32 value. According the sqlite3 docs can be used by applications for any purpose. It is useful for tracking database versions, and is used on by the Android SDK calls for that purpose, which can be helpful when doing cross platform work.
Removed an unnecessary header comment in FMDatabaseAdditions.h.
Merge pull request #225 from DanOranges/master

Fixed [FMDatabase openWithFlags:] so it does not reopen the db unnecessarily