Implementing core fc4j 2.0 functionality

[#80392902]
+1 - sorry glossed over all the test cases last night. So ya, only functional tests should be live. Unit should use the mocking frameworks like skylar suggests. Take a look at EasyMock - we use it tons around here.