some TODO-ish comments
be less clever about return value