internals of Sizeable class refactored