Rename Source(Line)Location to (Line)Location

The namespace name already contains the word "source". It does not seem
very meaningful to have the word in the class names also.
Rename SourceBuffer to Buffer

The namespace name already contains the word "source". It does not seem
very meaningful to have the word in the class name also.
Add Origin abstract class
Add missing include in LineLocation.cc
Add Origin to LineLocation

The LineLocation and Location classes are now defined recursively. They
now shares a single header and source file.
Fix build error on LLVM 3.4
Merge pull request #66 from magicant/feature/origin

Add origin to source location