Added a progress-monitor to ngsutilsj. Mimics the monitors from
ngsutilspy.

There is a standard text progress bar that updates every second at most.

There is also a Socket monitor that will open a new serversocket (TCP,
Unix domain sockets aren't supported on Java). If you connect to the
socket, it will return the current status and close the connection.

Enable the socket server by setting the java system property:
org.ngsutils.support.progress.socket=<port> or <filename>

You can also set the environment variable:
ORG_NGSUTILS_SUPPORT_PROGRESS_SOCKET=port or filename

If you set a filename, then the server IP/port will be written to the
file. (ip:port).

You can suppress all progress monitors by setting the java system
property: org.ngsutils.support.progress.silent=1 or with the environment
variable ORG_NGSUTILS_SUPPORT_PROGRESS_SILENT=1.
Added class to extract flanking regions from junctions (specify intron)
Added simple tool to validate a BAM file

This works by just reading each record in the file. If there is an error
it will be thrown as an exception.
Incorporated progress meters where appropriate...