Huge push

Updating the git branch with all my new additions.