I made this 9-sided box using the Grasshopper add-on to Rhino3D. Grasshopper is a parametric modeling package and thus allows all the parameters of a model to be changed dynamically.
The screenshot of the Grasshopper control panel shows all the settings for this box. Note that the knob on top of the handle can be either a torus (as shown), a dodecahedron, or a sphere.
The top fits closely onto the bottom because there is a triangular ridge around the box's top edge that fits into a similar groove in the box top. There are separate parameters that control the size and shape of this ridge. If no top is desired the top edge of the box can be a rounded lip.
Because Grasshopper has some quirks that can be confusing I am not posting the actual Grasshopper source file here, but will be happy to provide it to anyone who wants it (along with an explanation of how it works.)