Better camelcasing algorithm.

Make sure toCamelCase handles apostrophes and hyphens.