I know that there are probably dozens of other interchangeable screwdriver handles out there, but I like to reinvent wheels. Besides that, I don't think I've ever seen one that incorporated a retaining ball like the type used in ratchets and socket drivers.
This is only my second model in FreeCAD and I still have no idea what I am doing, so with that in mind, I think this turned out pretty good, if I do say so myself.
I initially printed this without any ridges, mainly because I forgot that I had wanted to, so there is a v2 of the handle that does have ridges.
You can use this either with or without the ball, but... why not?
-=[ EDIT ]=- 4-18-19
OK, so the spring idea doesn't seem to work so well. There isn't enough room for the spring to really work right. So what I did instead was to leave the spring completely out. After you put the BB in the hole, follow that with the pin and then tightly wrap several wraps of electrical tap around the handle over the pin. This will serve to act as a sort of external spring that keeps the BB pressed in while allowing it to retract when pulling the bit out.
-=[ ORIGINAL TEXT ]=-
So for the ball, you will need a standard 4mm BB and a small, 4mm diameter spring. Insert the BB into the hole on the side of the handle. Cut the spring so that you have three or four loops (depending on the resistance of your spring) and insert that behind the BB, with the uncut side facing the ball. Apply glue to the edges of the pin ( I like [this acrylic cement](https://www.amazon.com/SCIGRIP-10315-Acrylic-Cement-Low-VOC/dp/B003HNFLMY) myself - it actually welds PLA together the way that model cement (used to) weld polystyrene model pieces together) and push it into the hole, lining the pin up with the contour of the handle body. Clamp the pin in place overnight. If, when you insert the bit into the handle, the pin pops out, either print it slightly (~102%) larger and glue it again, or maybe cut one loop off your spring at a time to reduce the pressure on the pin.