adding tests and knapsack example