merged it a lot of changes made to cs671 files from subversion repo