I'd really like to get away from implementation details in our APIs...