Associating Products with Users

By overriding a `.pre_save()` method on the views, any information that is implicit in the incoming request or requested URL can be handled and associated with the models.
Updated the `ProductSerializer`.

 The update reflects the association with the user who created them.
Added a comment to `serializers.Field`.
Added required permissions to views.

`IsAuthenticatedOrReadOnly` will ensure that authenticated requests get read-write access, and unauthenticated requests get read-only access.
Added login to the Browsable API.
Added object level permissions.

We'd like all products to be visible to anyone, but also make sure that only the user that created a product is able to update of delete it.

To do that, we created a custom permission class `IsOwnerOrReadOnly`, and added it to the `permission_classes` attribute of the related views.
Added newline at end of the file.