Tidy up and CS fixes

- Renamed $_elements to $elements
- Added new line before return statements
- Returned early where possible
- Fixed usage of constant
- Removed duplicated code
- Removed unnecessary return statement in offsetSet
It should still be followed. We are aware that it clashes with PSR-2