How to format the display of a node? I have contributors who have a vast range of skills and experience, who will have permission to post on my site. I want them their content to be displayed in the same way.

I want the user to be able to upload a single image and write some text in WYSIWYG and for it to publish with the picture at a pre-formatted width (let's say 40%) and for the text to wrap around it, like you would expect on a web page.

I imagine that I might not be able to create this as a content type and will have to use a webform, but I am still not convinced.
Yes, that is how I envisage the end result, but I am looking for a
  solution to allow the node author to drop the picture into an input
  field and let Drupal deal with the float.


All you have to do is create a template file for your content type. Then add a class or an id for your image field. (copy the node.tpl.php file and paste, rename the copy to node--[your content type name].tpl.php such as node--articles.tpl.php) Then add this line, you will also need to print all the other fields you want to see. 

Example &lt;div id="floated"&gt;&lt;?php print render($content['field_image_example']); ?&gt;&lt;/div&gt;

So when someone view's the page, your image will automatically be wrapped inside floated. 

(above answer assumes you're using Drupal 7)

Template file

&lt;div id="example"&gt;
  &lt;div id="floated"&gt;&lt;?php print render($content['field_image_example']); ?&gt;&lt;/div&gt;
  &lt;?php print render($content['body']); ?&gt;
&lt;/div&gt;


CSS

#example{
    width: 400px;
    background: yellow;
}
#floated img{
    float: left;
    width: 150px;
    background: red;
}




If you want an easier solution, less advanced knowledge needed, then use Panels which will let you add a class to your image.


  The Panels module allows a site administrator to create customized
  layouts for multiple uses. At its core it is a drag and drop content
  manager that lets you visually design a layout and place content
  within that layout. Integration with other systems allows you to
  create nodes that use this, landing pages that use this, and even
  override system pages such as taxonomy and the node page so that you
  can customize the layout of your site with very fine grained
  permissions.


Panels Tutorials