Move the initializer init method to main

No need to abstract the initializing method from the main method.
Creates unneeded obfuscation.
Remove the initializer.

The initializer knows far to much about the app. Remove the initializer
in favour of execution running form main. Move the command and arg
parser to an arg parsing module. Ensure the arg parser stays functional.
Add periods.
Add the creator io module.

This is the module that will handle dirtier non-functional functions.
Refactor to make use of Some, None, & Maybes

When returning options use Some and None to help with error cases.
Previously passing unknown opts would cause exceptions.
Swap the logic so version can easily be printed.
Remove root in favour or the more appropriately named muxed_root

Rename the module. Also get rid of any of the file creation strategies.
The muxed root directory will be created as needed during config file
creation. When a new project is created recursively create the needed
directory.
Have arg parse return the project file path

Instead of simply returning a project name as a string return the
entire file path with muxed root.
Upgrade version to run in travis.

Test multiple branches.
Apparently 0.13.0 came out :)
Return &str in favour of Strings

This is a rust best practice. Follow the best practice.
Remove the creator module.

Remove the creator module and use the project module instead. Project
better represent exactly what the module handles. Break the module down
further with an IO module to handle non-functional functions.
Remove editor.

Remove the editor module completely as it ’s functionality was sparse
and also needed in the creator module which has since been re-purposed
to the project module.
Remove 0.13 as it isn't available as a non-nightly.
Test the expected Path for muxed root.
Move to using macros

Instead of having each function know how to handle it’s failure case-
allow the function to fail gracefully and use macros to handle errors
in a standard way.

This allows functions to be easily testable returning Result with Ok or
Err. Then we can use a macro to handle printing helpful user errors out
to the console in a standard way.
Remove compiler warnings.
typo.
Allow passing an array of u8's.

Path filenames are returned as an array of u8. Allow the modified
template to accept that array instead of a String.
Cleanup the main method.

Make use of the new try_or_err macro.