Add semantic versioning tagging

Adds the ability to use semantic versioning when using `tag-release`.

QA Plan
------------
Since we don't want tags mucking up the repo, this is what you can do to make sure the tags will at least work properly:

1. Checkout this branch and make sure you are up to date with the code:
  
  ```shell
  $ git checkout mobile-635-semantic-versioning
  $ git pull
  ```

2. Open up the `lib/octopolo/scripts/tag_release.rb` and change the `#execute` method to the following:
  
  ```ruby
  def execute
    puts tag_name
  end
  ```
  
3. You can now swap between have `semantic_versioning` be true and false in the `.octopolo.yml` file to see what the output would be in the `CHANGELOG` and the git tag.  The semantic version tags should work by either selecting `Major`, `Minor`, or `Patch` from the prompt, or by passing in the flag.
4. When you are finished, run `git reset --hard` to undo your changes.