Set oven and prep pan. Preheat the oven to 400°F. Use 1 tablespoon of the butter to grease a 10-inch bundt pan, or a 10 x 3 or 4-inch cake pan. Grease the pan very well!
Prep bread. If the bread has a thick crust, use a serrated knife to cut it off. If it's a soft, thin crust, there's no need to. Then cut the slices in half or fourths.
Make milk mixture. In a large saucepan, whisk the eggs with the milk, half and half, sugar, vanilla, cinnamon and salt, until it's blended. Place the pan over medium-low heat and let it warm only enough to dissolve the sugar, about 2 minutes. Set aside.
Make bottom layer of pudding. Add the oil and butter to a large sauté pan, and over low heat, let the butter melt. Stir to blend.Dredge each slice of bread into the oil-butter mixture, coating one side only, and placing them on a baking sheet as you go.Line the bottom of the greased pan with one layer of the bread, greased side down. When necessary, tear the bread into different sized pieces to better fit the curves of the pan -- and use smaller pieces to fit in any little crevices.Then pour just enough of the egg mixture to cover the layer of bread. Bake just this portion in the preheated 400°F oven, until the egg mixture appears solid, about 10 minutes. Continue assembling/layering. Now, gently dredge each of the remaining bread slices into the egg mixture and add them to the cake pan, greased side down, filling all possible crevices. Between each layer, drizzle with about ½ cup of the egg mixture and a sprinkling of the chocolate. Also, gently press down on the bread layers with the back of a large spoon or your hands as you go.Once you’ve filled the pan almost to the top, carefully pour in any of the remaining egg mixture that the pan will hold. Pour in just a little bit at a time and let it sink in, then a add a bit more, and so on. You should see the liquid rise to the top of all of the bread layers. Bake. Place the pan on a foil-lined baking sheet, as it will likely overflow. Bake in the 400°F oven for about 1¼ hours. It will rise out of the pan (like a soufflé), and will be uneven. Check on it after about 45 minutes, and periodically there after. It's done when it no longer jiggles and is golden brown. If the top seems like it’s getting too dark before it's done, cover it with foil for the remaining cooking time.
Rest, invert, slice and serve. Once you’ve removed the pan form the oven, let it rest for about 15 minutes. Then, go around the sides of it with the dull side of a small knife, to make sure it isn't stuck. Invert it onto a large platter.