Rendering field groups (not individual fields)
I ended up using hide() on content elements I wanted place independently before print rendering the rest of content. As I have learned the way drupal renders/prints makes this very easy. Example:

&lt;?php hide($content['product:title']); ?&gt;
&lt;div&gt;
  &lt;?php print render($content); ?&gt; &lt;!-- $content['product:title'] is not output --&gt;
&lt;/div&gt;
&lt;div&gt;
  &lt;?php print render($content['product:field_image']); ?&gt;
&lt;/div&gt;