Safe type array useage & stopped potential memory leak

Just some small optimisations as I was looking through the project.

Recycled the requested type array.

Made the inner class static, this stops it holding a reference to the `SystemBarTintManager` ; which holds a reference to the `Context`. In the case that someone uses the `getSystemBarConfig` and holds onto the `SystemBarConfig`.

Highlighted immutable fields.