start rearranging code to enable multiple VCS systems
split middle.py into from_keywords.py and from_vcs.py
rename "variable" to "keyword", makes more sense that way
rename parentdir to from-parentdir, for consistency
remove START/END from the long-version template

I think this was a leftover from an era when long-version.py had some
extra code that didn't go into the generated _version.py . At this
point, the whole thing goes in, so we can add the triple-quotes from the
outside.
split trailer.py into from_file.py, get_versions.py, and cmdclass.py
header.py: add notes
remove workaround for py2.5 missing os.path.relpath
give git-specific names to all git-specific functions
split long-version.py into header and trailing get_versions
create multiple LONG_VERSION_PY files, hardcoded to 'git' for now
from-keywords: tolerate empty input keyword list

This simplifies the code in get_versions.py
get_versions: switch on versioneer.VCS
versioneer.VCS: don't hardcode 'git'
demoapp: don't hard-code git

This should make the demoapp usable by tests for other VCSes.
add notes for developers on adding a new VCS
Merge branch 'polyglot'

Closes #26.