Cleaned up with more comments and reorganizing stuff