Implemented a file parser. Added SourceOfExamples for lazy example listing (especially useful when lazily searching for files that match a certain prefix).
Ported the file search with pre-Java 7 API.
Overloaded the the fileParser method. Renamed SourceOfExamples to ExampleSource. Documented fileParser, FileExamples, and ExampleSource.
Moved ExampleSource into a separate file.
Documented the new Parsers API a bit. Prepared the new API so that we can port the old ones to the new. Added support for filtering erroneous examples.
Documented the DynamicExamples and FixedSetExamples classes.
Now using ExampleSource in collection-based completion parsers. Removed the Examples parser. Renamed DynamicExamples to ParserWithExamples.
Move NameHashing from incremental to api subproject.

It should have been there from the beginning because NameHashing is tied
to internals of the API subproject.

It was added to incremental subproject by mistake.
Remove deprecated EvaluateTask usage for new, easier to update variant.
Created unit tests for ParserWithExamples and FixedSetExampleSource.
Improved the description of ParserWithExamples tests.
Merge pull request #1250 from gkossakowski/namehashing-cleanup

Move NameHashing from incremental to api subproject.
Added tests for FileExamples. Improved the file-searching in FileExamples.
Fixes issue with deadlocking server discovery on windows.

It turns out windows blocks until a process is finished when
you try to close the stderr handle, but not stdout.  Therefore,
we leave stderr open when we shut down, which lets the server
continue to run on windows.
Merge pull request #1265 from sbt/fix/launch-windows-servers

Fixes issue with deadlocking server discovery on windows.
Use the correct state in buildPluginDefinition()

Within buildPluginDefinition(), the call to setProject() can
(and usually will) return a modified structure together with
the new state.

The subsequent call to evalPluginDef() should use the updated
structure, rather the old stucture that was present before
the setProject() ("pluginDef"); if that is not the case,
the code called by evalPluginDef() will find an inconsistent
structure/state combination, and behave in bizarre ways as
a result.

More in general, it is a bit dangerous to pass to routines
in parallel the two separate state and structure, as the
two may easily inadvertently fall out of alignment, as in this
case.

This patch should be applied to both the 0.13 branch as well
as to a future 0.12.5 release (the corresponding file there
is ./main/Load.scala).
Merge pull request #1266 from cunei/wip-013-buildPluginDefinition

Use the correct state in buildPluginDefinition()
Merge pull request #1263 from sbt/wip/docs-and-cleanups

addPlugins => enablePlugins
Merge pull request #1255 from sbt/wip/remove-depreated-evaluate-task-call

Remove deprecated EvaluateTask usage for new, easier to update variant.
Initial Spanish translation of documentation