Fix for 10.7 - this code now seamlessly works on 10.7 and 10.8 without any extra changes

I needed this for a project of mine and I noticed it didn't run under 10.7. After trying to compile directly under 10.7, i found that setPreferredMaxLayoutWidth: was the culprit (only available under 10.8). I've removed that method and added additional code to achieve the same look & functionality.