refactoring to extract Weight Calculation out of Data collections
rename a class
more refactoring on weight calculation
fix a spelling mistake