I tip my hat off to the odoo documenation team. There is quite a bit of documentation available, however there are some gaps that need filled in, especially for a newbie like me coming from a php background. The biztech theme available for free helped me the most in figuring out how to modify, and use a basic bootstrap theme.
I have successfully created a theme, and installed it, and I have my homepage rendering to a custom bootstrap theme. I think I've realized some limitations in the odoo xml theme framework. I tried to do something simple, in my opinion, which is move the default navigation menu to a location under a parrallax header in the theme. In php, and traditional cms, this wouldn't be a problem, since there are tags that allow you to place rendered content anywhere inside your theme. odoo however uses template blocks, and there is not a master template file, that is used on every render(with variables inside for rendering content).
The closest thing is to override the default page layout, using a page definition, but there is not enough documentation of how the default page templates work. You have to read the code, and there are obviously things I'm missing in the flow.
I've tried doing a new homepage template using the page=True, and I had much greater control over how that page looked. The problem with this approach, is the page editing was completely missing. I could not figure out what t-call to do to include that.
xpath calls are only helpful on the website.layout, and don't help you on an inherited view.
For example, if I were to attempt to replace the existing header in the default layout with empty content, so I could move it later in the template flow, I would think the logical way would be an xpath search with replace. this works for website.layout, but not if I just want the change on a single page.
<xpath expr="//div[@id='wrapwrap']/header" path is not found, if I use that inside a template, where inherit_id="website.homepage", but it works fine in website.layout.
So my next thought is to actually do this on website.layout, however use template variables to detect homepage. how would I use a t-call="website.layout", but replace the resulting content based on a t-if homepage?