Added some extra comments; removed some redundant methods