[9] support the concept of system reserved config for generation_id.

getting methods now take into account the reserved item names with a hardcoded
default.
also made some internal cleanups: make function names more consistent, use
unnamed names space instead of file-static functions (to be more C++-ish),
indentation and other minor style fixes.
[9] minor cleanup: use 'with' to close opened file automatically.
[9] add support for system reserved config items, for generation IDs.
[9] support concept of system reserved items in python code.

also handle _generation_id
[9] handle system reserved config items in config validation.
[9] skip system reserved config items in auth config parser

(they are currently not used in auth).  also, the test-only '_commit_throw'
is renamed so it won't conflict with the reserved naming.
[9] make sure genid is increased on config update.

also reject attempts of manual overriding.
Merge pull request #10 from bundy-dns/issue9

Issue9: support the concept of config generation ID