refactored product and user resource. (to be continued)