added comments plus final touches