Prevent main script override.

Previously, if the "main" option would added the main script specified, regardless if it was added using any of the other file adding options. This change prevents the override if the file has already been added.
Restoring 1.0 metadata behavior.

In 2.0, the way JSON data is decoded has changed to keep objects as objects. In 1.0, objects were converted to associative arrays. For backwards compatibility, this behavior is being brought back.
Testing metadata after build.
Removing 1.0 autoloader.

The rewrite has fixed this issue. It seems to have been caused by using an alias, or probably Phar::mapPhar() in the stub.
Broke out replacement testing into a separate test.

The command functions as expected outside of the testing environment, and on two separate operating systems. Since the break out, the tests have been passing as expected.