Given the name of an $author,
returns the directory where the distributions for that author belong (as a Path::Class::Dir).
The optional @base can be a series of Path::Class:Dir or path parts (as strings).
If @base is given,
it will be prepended to the directory that is returned.

Parses a path like the ones you would see in a full URI to a distribution in a CPAN repository,
or the URI fragment you would see in a CPAN index.
Returns the author and file name of the distribution.
Subdirectories between the author name and the file name are discarded.

Returns the offset between current UTC time and the local time in seconds,
unless overridden by $Pinto::Globals::current_time_offset.
The current_time function is used to determine the current UTC time.

Returns the username of the current user unless it has been overridden by $Pinto::Globals::current_username.
The username can be defined through a number of environment variables.
Throws an exception if no username can be determined.

Returns the author id of the current user unless it has been overridden by $Pinto::Globals::current_author_id.
The author id can be defined through environment variables.
Otherwise it defaults to the upper-case form of the current_username.
And since PAUSE only allows letters and numbers in the author id,
then we remove all of those from the current_username too.