Tidy changes to jsonp tests
Preserve argument structure and de-dup env var

Quote the "$@" to keep arguments with spaces (like -e 'print 1') working
and re-use the carton script to reduce duplication.
Define wrapper to cd and setup env to simplify jobs

This sets up the carton environment and allows for much
shorter command line invocations (useful for cron jobs, etc).

Note that it can also be confusing for interactive command line usage
if you're using relative paths (but I think those use cases are rare here).
Remove hack for using outdated ./local/lib

Since we have carton install somewhere else now that hack doesn't work anymore.

I'd love to have something like "use Carton::LoadLibs" or something
(like `require "bundler/setup"`) but carton doesn't support that yet.

For now this script just needs to be run under one of the wrapper scripts.

closes gh-326.
Check distvname is defined before comparing it

to avoid several warnings every time the script is run.
Some weird uploads don't have it.

Also add some comments to make it easier to follow.
Wrap data prep tests in a subtest for cleaner TAP

The tests only happen once, but it can be confusing to see them when varying
which test are run.  Since it's all related, stick it under one group.
Then it only counts as 1 test in the end.
Correct doc on value of release.status for dists with only developer releases

The claim that "latest" is used for distributions with only developer
releases may have been true at one point, but since 6997f94, "reworked
latest script", the Latest script has pegged maturity to "release" only.

This makes sense as the "latest" status is supposed to be a reflection
of 02packages from PAUSE, and PAUSE never indexes developer releases.
Adding the API Document.
Stargazers controller file.
Controller script for User.
Testing script for stargazers.
Tidy all.
Abiding by the Perl Critic standards.
Small changes to the code.
Using Try::Tiny.
Use Roles to implement starring.
Rename MetaCPAN::Role Script and code cleanup.