simpler config parsing, refact'd report generation

The config parsing actions are now part of the "App::Watson::Configuration"
class. The various actions are now functions of their own.

The report generation now defers the outputting to reduce side effects. It
was also refactored to use separate functions for files and dirs, cutting down
on loops.

The $VERSION back-and-forth was fixed after consulting the "version" module and
<www.cpan.org/modules/04pause.html#version>.

Minor style improvements across the board.
removed silly "check_file": "open" raises errors

A check if the filesystem object exists and is a simple file should be
sufficient in most scenarios. If we cannot open the file, then an error
will be thrown anyway (albeit later).
Preparations towards a separate lib/

The "install" section from the README was updated so that it no longer assumes
a single file. The README now also talks about Stable and Unstable forks.

A "cpanfile" was added to keep track of dependencies.

A sensible devel version number is now implemented.
refactored vaious classes into separate files

Specifically, these are:

 - ::Issue
 - ::IssueList
 - ::Repository
 - ::UI
 - ::UserAgent