Java Tutorial, Sample Programs and Assignments for Intermediate BHCSI course