Added database file bases lock
Added database file bases lock

Current version of sqlite.so(~3.8.5) it seems that it needs to lock
entire a database file during SQL access.
- not only row nor table but a file
- not only INSERT, UPDATE but also SELECT

Without lock, app will have either:
- database file disruption
- BUSY exception with much time overhead

To ensure that, I put logic around SQL execution to lock entire file
automatically.

And to prepend deadlock I added more:
- RunInTransaction(Action) locks the database during the transaction (for insert/update)
- RunInDatabaseLock(Action) similarly locks the database but no transaction (for query)

codecoding/SQLite4Unity3d