updated to follow Yii2 extensions guidelines