Majority part of text of bc work, update tests, update ruby code