First pass at new Commands factory

 On branch functional_refactor

	modified:   enginemill.js
	new file:   lib/commands_factory.js