Refactored to Account trait and impls, finished specs.