logical_id and product in session

finished changing test and session to logical_id and handled API for product name/version in session
Why is this constructor needed?