OOP-refactored for pseudoclassical producer class

close #23