refactored datasource interface, fixed linker, solved bugs
updated javadoc