Add Options/Switches

A new module, "minimist", has been added for use in the parsing
options passed in commands. The passed arguments are then bound
to the relevant option function as its this argument.

Methods have been commented better in "index.js". Spacing has
been added to "tests/test.parser.js".

A new test to ensure that the `this` is bound with the parsed
options to the option function has been added.

The Dependency file, "package.json", has been changed to reflect
the new module dependency.
Rename tests/ to test/

To confer to wide-spread conventions of naming the test directory
as "test", we rename ou "tests" to "test".

The "package.json" has been changed to allow `npm test` to find
the renamed test directory.
Maintain compatability with Node <= 0.8

The version numbers prepended with "^" seem to bring up an
error with Node versions 0.8 and 0.6. To mainatain
compatabilty, the version is changed to be specific i.e
without the "^".

Dropping the Node versions may be considered.
Merge branch 'switches' into develop

New Feature: switches

A switch, in this context, is any argument with "-" or "-"
preprended to it. The arguments will be parsed with `minimist`
and bound to the function as its `this` as it is being invoked.