Combining add/edit functionality to reduce code

Merged add/edit productNode functions into one setProductNode function.
Created  getProductDetails() to generate the model data for
addProduct/editProduct.  Improved some naming conventions and commenting