added lots of comments and cleaned up css