User Can Post Product (#76772954)

As discussed, contains basic Rails CRUD for a Product model.

It will validate URLs and names of Products and will clean up extraneous content. 

*Problem:* It is valid to enter two identical URLs in the form of `http://example.com/` and `https://example.com/`. Therefore, the uniqueness property of a product's URL is not actually valid all of the time. I tried fixing it, but the solution was not pretty. (What would be prettier I guess is to double-check for uniqueness. Thoughts?)
try this syntax instead of @product  - refer to 'subject'  and use @product to refer to the 'ideal' or working object 

  i.e. subject { described_class.new link: 'http....', name: 'blah' ... }

(and replace the use of the before(:each) block and @product with simply the subject)

for invalid objects - just create them in the same spec 

e.g. 
it 'should not allow invalid HTTP/HTTPS links' do
  product = Product.new link: 'invalid'
  expect ( product.valid).to eq false
  expect(product.errors_on(:link)).to include("invalid URI")
end