Moved product JS to external file (mostly)

- Move majority of `product.liquid` JS into `shop.js.liquid`
  - In order to use `shop.js.liquid` cache'd selectors, the remaining JS is moved to `theme.liquid` so it runs after `timber.init` is fired.
  - Is it worth making a snippet, or does it look fine at the bottom of theme.liquid?
- And removed some console.logs (blame @Tetsuro)

Update:
- Moved selectors to new function so that it doesn't have to follow `timber.init` (therefor can be moved back to `product.liquid`)

cc/ @stevebosworth @mpiotrowicz 
do these need to be saved outside the productJs function? why not just declare them there?