move ide_gen.py and friends idea_gen.py and eclipse_gen.py to new options

Move ide_gen.py and friends idea_gen.py and eclipse_gen.py to new options

Testing Done:
CI is running.

Bugs closed: 736

Reviewed at https://rbcommons.com/s/twitter/r/1230/
change thrift_linter.py to use new register_options

Testing Done:
Take two. Previous change accidentally added "default=False" which was inappropriate and ended up breaking the logic that falls back to a value defined in the BUILD file. Now we explicitly default the flag to None and preserve the desired logic.

I ran the integration tests related to thrift linter, which I inadvertently broke in my last attempt at this:
  devpants goal test tests/python/pants_test/tasks:thrift_linter_integration

Reviewed at https://rbcommons.com/s/twitter/r/1225/
Fix spacing in thrift_linter.py
Allow UTF-8 characters in changelog

Testing Done:
Tests pass, except that sometimes they fail on travis because
sys.stdout.encoding.

Reviewed at https://rbcommons.com/s/twitter/r/1228/
Minimal target "tags" support

This doesn't provide any addtional end-user functionality, but has been useful as a channel for custom tasks and BUILD files to communicate addtional information about targets.

We've been rebasing this change on top of upstream pants for releases at Foursquare for a few months now and we've found it useful in implmenting downstream custom tasks (like our graph rules), which need a place to put additional information in the build graph, while staying out of the internally meaningful things like `labels`.

Testing Done:
https://travis-ci.org/pantsbuild/pants/builds/39211424

Reviewed at https://rbcommons.com/s/twitter/r/1227/
Remove java_sources as target roots for scala library in depmap project info #670

Testing Done:
ci passes

Reviewed at https://rbcommons.com/s/twitter/r/1190/
convert more .rst files to .md

convert more .rst docs to .md. With this, src/python/pants/docs/*.rst have been converted.

In some pages that were already converted, some links were "TODO" because their destinations weren't converted yet. So fix those up.

Mostly formatting changes, no content changes. except...

src/python/pants/docs/docs.rst -> src/python/pants/docs/docs.md : this page said that docs were .rst format with some details. switched to saying .md format, left out new details.

src/python/pants/docs/with_emacs.rst -> src/docs/with_emacs.md : Changed title to mention "Emacs" instead of just "Ensime".

more small tweaks in response to reviewer feedback

Testing Done:
eyeballing. To eyeball this change along with a couple of sitegen-fix reviewboards, see http://pantsbuild.github.io/sitegen-test/

grepping for some common mistakes from previous batch

Reviewed at https://rbcommons.com/s/twitter/r/1219/
git root calculation for idea goal

Testing Done:
tested in dev mode locally. ci passes.

Reviewed at https://rbcommons.com/s/twitter/r/1189/
Revert "convert more .rst files to .md"

This reverts commit b7967f52c1b70aa0c7c297633438fafbfd23164a.

This commit broke CI :-(

Submitting this reversion TBR

Reviewed at https://rbcommons.com/s/twitter/r/1235/