Updates self:: References to static::

Replaces several `self::` references with late static binding `static::` references, which gives a more predictable reference behaviour.
fixing merge conflicts
Merge branch 'cyrusboadway-feature/static-over-self' into 0.3.x-dev