Major refactoring

- Caching `Array.prototype.slice()` & `Object.prototype.hasOwnProperty()` within namespace closure scope
- Rewrote `utility.clone()` and added `shallow` parameter
- Utilizing shallow clones in various methods