RFC 7232 Compliance for yii\filters\HttpCache

This PR fixes #4372. I took the liberty to update the documentation as well and provide some basic test coverage for the filter.
The logic is not correct now. For example, `$etag` is not null but `in_array($etag, Yii::$app->request->getEtags(), true)` is false, the method should return false regardless the `$lastModified` check.