Fix potential NoSuchElementException on Nil.head

No test included because I had no idea on how to reproduce the behavior
in a test - the exception occurs for me only in a misconfigured compiler
but not in a correctly configured one.
TypeParams added to AddMethod

Type parameters are added for def construction in AddMethod refactoring.
Current implementation limitation:
there is an issue if pass several type params to mkDefDef inside addMethod (inside AddMethod class).
To overcome this issue in the commit all required type parameters names are grouped in one passed typeDef:
val typeDef = new TypeDef(NoMods, newTypeName(typeParameters.mkString(", ")), Nil, EmptyTree)
this typeDef is used while constructing result newDef in mkDefDef.
add generation of unique abstraction name to extractions

Use the scope of the selected code to generate a unique name for the
extracted abstraction.

This moves the responsibility for avoiding name collisions due to
extractions from the IDE to scala-refactoring.
Use 2.11.0 and 2.10.4 for building the published artifacts
AddField refactoring added

Similar to AddMethod, intended for val/var creation.
Current implementation limitation: var printing is implemented with direct
var addition (otherwise var is not printed):
NoSymbol.newVariable(newTermName(s"${nme.VARkw} " + valName))
Run tests that use a selection on the PC thread.
AddField/AddMethod refactoring
Merge pull request #49 from VladimirNik/abstract-members-implementation-api

Added: AddField refactoring, type params to AddMethod
Fix build errors due to detected race conditions
Merge remote-tracking branch 'scala-ide/master' into feature-extractCode

Conflicts:
	org.scala-refactoring.library/src/test/scala/scala/tools/refactoring/tests/common/SelectionDependenciesTest.scala
	org.scala-refactoring.library/src/test/scala/scala/tools/refactoring/tests/common/SelectionPropertiesTest.scala
Merge pull request #51 from Luegg/feature-extractCode

add generation of unique abstraction name to extractions
Prevent double { when adding method to empty trait.
Release version 0.6.2 with the new Extraction Refactorings
Set version to 0.6.3-SNAPSHOT
Prevent double { when adding method to type with abstract super class.
Add missing tests to suite.
fix duplicated arrow when extracting extractors from case statement with body on next line
Merge pull request #53 from Luegg/fixExtractExtractor

fix duplicated arrow when extracting extractors from case statements with body on next line
Merge pull request #48 from sschaef/t-fix-potential-no-such-element-exception

Fix potential NoSuchElementException on Nil.head
Propose all possible extractions in ExtractCode

This PR changes ExtractCode such that it does no longer filter the available extractions based on the side effect detection heuristic. This results in more proposed extractions but is more flexible.

After applying this PR, the "Extract..." command in Scala IDE can replace the remaining extraction commands "Extract Value", "Extract Method", "Extract Parameter" and "Extract Extractor".