Changed to Java 8, added unit test libs, and tested/refactored Solenoid classes

The 2015 WPILib and control system will use Java 8. It would make a lot more sense for our competition robot (anything using the RoboRIO) to switch to Java 8. (Code that has to run on the old robot can't use Java 8, so merging this PR means that this code can only be used by the RoboRIO. Older robots that use the CRIO would have to continue using older repositories and code.)

Added Eclipse Kepler preferences under `support` directory. Eclipse Kepler is the best version to use with Java 8.

Added JUnit libraries under the `libs` directory. Also created a new `testsrc` directory under which all test code should be placed. Moved the mock implementation classes to that directory, and created a `LimitedSolenoidTest` class. Running these tests showed some deficiencies in the `Solenoid` interface and implementation classes, so they were refactored so that the logic would work correctly and the tests would pass.
Although both the `LimitedSolenoid` and this class both share a `checkState()` method, and the remaining methods have very similar implementations, the actual `checkState()` implementation in this class varies a great deal from the one in `LimitedSolenoid`. Therefore, there's really not much value to refactoring into a common base class. 

(There is some value, but IMO it is offset by several disadvantages: it would have created an other class, the common methods would be very generic, and then the core logic of each implementation class would be separated across two classes, making the code more difficult to understand. By not using a common base class, we have duplicated some very trivial methods, but each implementation is very nicely encapsulated.)