For index.php, should I add the div immediately after the opening <body> tag or immediately before the closing </body> tag?
You add it in front that way the background will load first.
For templateDetails.xml, should I place the <position>bgimage</position> immediately after the opening <positions> tag or immediately before the closing </positions> tag?
Place it after the opening of position tag
Likewise, for template-options.xml, does it matter where I add the module position within the <fieldset name="layouts" label="LAYOUTS"> ... </fieldset>? I suspect that it makes little difference in terms of front-end display where the fields are added in this file, as this adds control factors to the backend.
You don't need to add this.
And last thing you need to do is add this position in index.php start the div just after the body opening.
<div id="position_name">
<?php echo $gantry->displayModules('pos_name','basic','basic'); ?>
</div>
hope this helps!
update!
and of course in css make z-index to -999 to position_name id.