Sqlite::truncate(): Verify `sqlite_sequence` exists before _execute()

`sqlite_sequence` is a dynamic table that's only available when a table in
the database use an auto increment field.  For some cases, eg: databases that
exclusively use uuid for primary keys, this table won't exist and
truncate() call will fail with:

  Error: SQLSTATE[HY000]: General error: 1 no such table: sqlite_sequence
Reduce variable use/duplicate code.
Added/removed newlines to make the code more readable.
flushMethodCache not working if called before cacheMethod

When calling flushMethodCache it correctly empties self::$methodCache but if cacheMethod is called afterwards self::$methodCache gets populated with data from the Cache.
Use array_key_exists instead of isset()

This allows contains() to work with null values.

Fixes #4083
Updated doc block readability in bootstrap.php
Merge pull request #1668 from bcrowe/hotfix-bootstrapdocblock

Updated doc block readability in bootstrap.php
Use instanceof instead of is_a() in Controller.php
Merge pull request #1669 from bcrowe/hotfix-instancecheck

Use instanceof instead of is_a() in Controller.php
is_a() to instance of - completes PR 1669
Merge pull request #1672 from dereuromark/master-instance

is_a() to instance of - completes PR 1669
Replaced all is_a() calls with instanceof operator
Replaced true asserations with instanceOf asserations in test cases
Missed a couple instanceOf asserations
Merge pull request #1673 from bcrowe/hotfix-instanceof

Replaced all is_a() calls with instanceof operator
Resolves ticket #4100
Wrong signature.
Merge pull request #1674 from dereuromark/master-disabled-radio

Resolves ticket #4100
Merge pull request #1675 from bar/patch-1

Wrong signature.
App::import to App::uses