remove ARM target

The build target for the linux/ARM platform is not specific
enough. There are different ARM ABIs which must not be mixed
up. Removing this hacky implementation to prevent confusion.
removed old unit tests

The unit tests from old CVS heavily depend on the system
and make no sense at all. New Test Suits will be added
when the system was fully revised and refactored to be
more test friendly.
java: separate SPI from API

The CommDriver interface is not intended for API users. It is
only for driver implementors and is therefor an SPI. To
express this intention a separate gnu.io.spi package was created
and CommDriver moved there.
renamed rxtx-java artifact to rxtx-api

Since we are going to split the java part of rxtx into several
artifacts (mostly seperating API from implementation) the
name rxtx-java is no longer meaningfull.
fix lib prefix for unix based targets

On unix based systems the library names must be prefixed by "lib".
An easy way to archive this without a hassle in maven is to
rename the maven artifact.
separated driver implementation from API

Until now rxtx was making no difference between API and
implementation. The whole java part was a single package.
This is an optimal incubator for spaghetti code and prevents
information hiding. Therefor the implementation of the
serial (and parallel) ports were moved to a new java
package gnu.io.impl.serial which is located in the new
artifact rxtx-impl-serial.

The separation makes clear that the
rxtx serial driver is only one possible implementation of
the API. This was forgotten in the past and the code
of serial, parallel and other drivers got cluttered.
Seperating the implementation assures, that the API is
not depending on the implementation.

This commit is still suboptimal because the serial and
parallel port driver implementations depend on eachother
and need to reside in the same package. In the future
the parallel port driver should be moved to another
package/artifact.
we're forced to make driver impl public again

In the review/visibility branch there was an attempt to hide
all implementation details from the API user. It turned out
this can not be easily archived in the case of the
implementations of CommDriver. To make the loosely coupled
API/implementation via reflection work, the implementation
class must be public and provide a public constructor. This
is also true for the planed ServiceLoader approach. Although
there are ways to modify the visiblity of classes using
reflection, this might be prohibited by the SecurityManager.
So we choose the way to make the implementation public.

To prevent the user from depending on the implementation details
by accident, we put on a huge DON'T DO THAT sign via the
javadoc deprecated tag.
Merge branch 'feature/restructure' into development