Understanding Basic Chemistry Through Problem Solving