add interfaces for underlying entities; add base currency pair object which merely indicates two currencies without a known conversion rate; add unit tests for base currency pair object