If an SQLite database exists, but is not writable, return a lowLevelError

Also, the check for database directory existence and writability can be accomplished with is_writable() which returns TRUE if present AND writable. Addresses issue #141.