Added some comments, minor cleanup, USE TABS rather than mix of tabs and spaces...