@mtrias Private is an overkill in this class and serves no real purpose other than changing scope which makes no sense given the purpose of the methods/properties within this class.

Static attribute is un-needed because to use this class (especially themes) you need to have an instance of it so there is no benefit from architectural point of things.