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?)
ah - this is always hairy :-)

You can save yourself a bit of code and instead of
    self.name.strip! if attribute_present? :name and not self.name.nil?
use
  self.name.strip! if self.name.respond_to?(:strip!)

(not sure if you should use strip instead (rather than strip!) - AR might give you some grief?)

Alternative (better) implementations to choose from;
1) at the very least - write a separate method which does the work. -e.g.  https://stackoverflow.com/questions/3268053/rails-before-validation-strip-whitespace-best-practices
2) bonus points - make it a generic module  - https://stackoverflow.com/questions/4294923/rails-3-strip-whitespace-before-validation-on-all-forms
3) the best: let someone else take care of it for you: https://github.com/rmm5t/strip_attributes