Added exerecise code and tests