Corrected use of premake; restructured example; moved ROOT into config.

Corrected use of premake functions.¹
Corrected subst() return value.²
Corrected some documentation.

Changed function config block to receive the precore object instead
of the premake block.

Moved ROOT substitutionizer to a config.
Corrected base configuration in make_project().
Added precore-generic config.

example:
	changed objdir to "obj/";
	made test solution standalone;
	changed lib target name;
	added objdir obliteration when cleaning;
	.gitignored binaries.

1: Duh. configuration() *returns* the current filter; it only resets
the filter when passed an empty table.

2: Was leaking the repcount from do_subst/gsub.