Added solution for MinimumScalarProduct
Fixed one-off index error in ReverseWords.java
Refactored the code to simplify the creation of new classes