Implemented reading to different types on all three sources. implemented tests for subsequent reading from the same source.