Vector layer: add a feature title property

This PR adds a new property to the vector layer: a feature title.
This is defined as a field or an expression and can be changed in the vector layer properties:
![image](https://f.cloud.github.com/assets/127259/2371310/4a6cb06a-a823-11e3-9f52-dd90bdf0f443.png)

I already added this to feature form dialog title:
![image](https://f.cloud.github.com/assets/127259/2371318/80d2dbe8-a823-11e3-8292-d604198aaf36.png)

if accepted, my intention is to use it also in the dual view to be the default expression used. To be clear, in here:
![image](https://f.cloud.github.com/assets/127259/2371324/ba26f118-a823-11e3-87ad-9f3a872f479f.png)

The python bindings are not created yet, I wait for approval of the whole idea.

Also, in this PR I added a new class in gui: QgsExpressionGuiHelper. This class creates the connection mechanism between a field combobox and an expression button: it automatically populates the fields in the combo and update the combo with a new expression. This code as been rewritten in many places, and I thought it would be easier with this class helper, and even more for plugin writers. Although, I am not sure about the name of the class. I changed qgslabellinggui.cpp to use this helper.