\yii\rbac\PhpManager adjustments

Fixes #4072

- Data is now stored in three separate files for items, assignments and rules. File format is simpler.
- Removed `authFile`. Added `itemsFile`, `assignmentsFile` and `rulesFile`.
- `createdAt` and `updatedAt` are now properly filled with corresponding file modification time.
- `save()` and `load()` are now protected instead of public.
- Added unit test for saving and loading data.
How about `public $itemFile = '@app/rbac/items.php';`

Reason for `itemFile` instead of `itemsFile`: "item" is used like an adjective here. It should be singular.

Reason for `@app/rbac/items.php` is that you don't want to mix rbac data with other unrelated data.