Update samples to build against 168294 in main.

Most of the interfaces that take options objects now use an llvm smart
pointer API. Further, in the cases where I'd initially written up a few
bits of code that use the LLVM smart points API years ago, I used them
incorrectly and was passing null values. The most recent changes in
Clang just turned that up so I've fixed some of the cases of that (there
are more that don't cause crashes).

Work still to do:
Fix the rest of the pointer usage

Fix the naming of variables and indentation to be clean and consistent.

I think in the refactoring, I may have left references to types floating
around that I shouldn't have.
Add a sample reading comments from a specific file
Updated the comments to point to the LICENSE.

Helpful catch from Peeter Joot.
Update mainline to svn 170901.
Update the readme based on feedback.

Beatrice Creusillet pointed out that I was making an assumption about
how users installed clang and llvm without making that explicit.

Adding that assumption to the readme which is that users have installed
clang and llvm on their system with "make install".

In the long term, it would probably be nice to have some configuration
setup across the various OSes that this project runs on.
Update the readme to reflect the 3.2 release.
Merging in RRankene's latest changes.
Update samples to build against 173605 in main
Update sample to build against 175382 in main.
Add last built notice and tooling tutorial help.

LukasV sent in feedback about getting working with the tooling_tutorial
version of the codbase. Added a section to the readme that covers those
questions.

Added a timestamp date of the last revision and date of build out of
mainline.
Block Formatting.
Using only LLVMCONFIG variable in makefile
Merge pull request #21 from e3/master

llvm-config var in makefile
update new changes
merge from loarabia's branch