Added a ReviewUser to handle the user actions.
Added the Product functionality and some Log message refactoring.
Added some NullPointerException checks.