Sprint6

@prabinv @tsanko @texasag & @kevinsproles (cc @tylertadej )

This PR brings sprint6 to a close. It includes the following stories:

- 29252 spike to determine what code can be moved from method into toolbox
- 29998: refactor app.js (method code ported into toolbox)
- 29999: refactor main.js (method code ported into toolbox)
- 30000: refactor home.js (method code ported into toolbox)
- 30002: refactor header.js (method code ported into toolbox)
- 30003 refactor product.js (method code ported into toolbox)
- 30004 refactor category.js (method code ported into toolbox)
- 30005: refactor search.js (method code ported into toolbox)