Added informative comments, still barebones and a lot of comments need
cleanup!