Added annotation factory-method.

To vary the implementation of the annotation inside the MeasureTool
class a createAnnotation() factory method was added. Subclasses can then
override the createAnnotation method to provide an alternative
implementation. The reason for adding this is to ensure that the
annotation is added to the layer after it has been created. If you try
to do it otherwise, you will need to first remove the previous
annotation, create the new annotation and add it to the layer.