title: Add line break to axis labels and ticks in ggplot
body: <p>I'm looking for a way to use long variable names on the x axis of a plot. Of course I could use a smaller font or rotate them a little but I would like keep them vertical and readable. </p>
  
  <p>As an example:</p>
  
  <pre><code>df &lt;- data.frame(a=LETTERS[1:20], b=rnorm(20), c=rnorm(20), d=rnorm(20))
  df_M &lt;- melt(df, id="a")
  plot &lt;- ggplot(data=df_M, 
                 aes(x=variable, y=a, fill=value)) + 
            geom_tile() + 
            scale_fill_gradient(low="green", high="red")
  plot
  </code></pre>
  
  <p>here the x axis is just letters, but if I want to use the full name, the names use a disproportionate amount of space:</p>
  
  <pre><code>    plot +  
        theme(axis.text.x=element_text(angle=90)) + 
        scale_x_discrete(breaks=unique(df_M$variable), 
                         labels=c("Ambystoma mexicanum", 
                                  "Daubentonia madagascariensis",
                                  "Psychrolutes marcidus"))
  </code></pre>
  
  <p>So I would like to put a line break in the labels. Preferably in ggplot2 but other solutions are welcome of course.</p>
  
  <p>Thanks!</p>