Fixes SI-4929, with a test to verify.

Also fixes potential issue with Parsers.phrase not being reentrant; however, I was unable to actually reproduce this issue in practice. (The order in which lastNoSuccess was being set and compared seemed to guarantee that it would never actually be a problem).
Ctor default-getters unique name and are typed in constructor context
Fixed build for 0.11.x again.  Working on bringing version properties file up to par.
Fixed up versioning scheme.
SBT build should now mimic ant build for versions.
Added an incredibly hacky way for us to override the default sbt compiler interface.
Streamlining calls so success/failure go through complete, also made sure completeWith doesn't crash on multiple attempts.
Introducing tryCompleteWith for symmetry and for the possibility to treat racing completeWiths as a problem or not.
Removing a lot of residue and superfluous method declarations. Moving out newPromise to the implementations instead of having it inside impl.Promise
Removing some verbosity in Promise.tryComplete
Rewriting the doc message for tryAddCallback so it reflects the semantics
Removing the wrap-method from Promise
Cleaning up DefaultPromise.onComplete
Adding FIXME to ExecutionContext.fromExecutorService
Changing impl.Promise to return this.type
Unbreaking tryComplete + Future.apply since resolver must be use both for boxing of callback and for execution
suppresses warnings introduced in a2115b2352

locker.lib:
    [javac] Compiling 1 source file to C:\Projects\Kepler\build\locker\classes\library
    [javac] C:\Projects\Kepler\src\library\scala\concurrent\impl\Unsafe.java:17: warning: sun.misc.Unsafe is Sun proprietary API and may be removed in a future release
    [javac]     public final static sun.misc.Unsafe instance;
    [javac]                                 ^
    [javac] C:\Projects\Kepler\src\library\scala\concurrent\impl\Unsafe.java:20: warning: sun.misc.Unsafe is Sun proprietary API and may be removed in a future release
    [javac]             sun.misc.Unsafe found = null;
    [javac]                     ^
    [javac] C:\Projects\Kepler\src\library\scala\concurrent\impl\Unsafe.java:21: warning: sun.misc.Unsafe is Sun proprietary API and may be removed in a future release
    [javac]             for(Field field : sun.misc.Unsafe.class.getDeclaredFields()) {
    [javac]                                       ^
    [javac] C:\Projects\Kepler\src\library\scala\concurrent\impl\Unsafe.java:22: warning: sun.misc.Unsafe is Sun proprietary API and may be removed in a future release
    [javac]               if (field.getType() == sun.misc.Unsafe.class) {
    [javac]                                              ^
    [javac] C:\Projects\Kepler\src\library\scala\concurrent\impl\Unsafe.java:24: warning: sun.misc.Unsafe is Sun proprietary API and may be removed in a future release
    [javac]                 found = (sun.misc.Unsafe) field.get(null);
    [javac]                                  ^
    [javac] 5 warnings
[propertyfile] Updating property file: C:\Projects\Kepler\build\locker\classes\library\library.properties
[stopwatch] [locker.lib.timer: 0.908 sec]
SI-5677, Tiny typo. Fixed.
minor fix to macro tracing
fixes SI-5680
a deprecated method that I forgot to restore