Fixed CacheProvider documentation

Fixed the following:

- `$namespaceVersion` can only be `integer` or `null`, not `string`
- `getNamespaceVersion()` can only return `integer`, not `string`
- `bool` was used in once place, instead of `boolean` everywhere else
Yes, it's just a personal preference to always set it explicitly to `null` when it's not set by a constructor. It helps readability by better revealing the intent IMHO.