merchant can edit products

@cgruppioni @aslawter 

This branch was repurposed after it was created to focusing on editing as a whole. The branch name was changed locally, but I haven't been able to do anything about the name here.
Is the includes necessary? I'm not familiar with that method .. I would think you could call @product.images in the show view without needing this