Expose args on a public interface

End-users shouldn't ever access any lib modules.

Refs #128, refs #137.
Merge branch 'master' into geezer

Conflicts:
	main.js