improved products

- Better list view
- Added `Image` model
- Added `images` field to `Product`
- Renamed product.index route name to product.list