Add an @implicitAmbiguous annotation

Example usage:

    trait =!=[C, D]

    implicit def neq[E, F] : E =!= F = null

    @annotation.implicitAmbiguous("Could not prove ${J} =!= ${J}")
    implicit def neqAmbig1[G, H, J] : J =!= J = null
    implicit def neqAmbig2[I] : I =!= I = null

    implicitly[Int =!= Int]

Which gives the following error:

    implicit-ambiguous.scala:9: error: Could not prove Int =!= Int
      implicitly[Int =!= Int]
                ^

Better than what was previously given:

    implicit-ambiguous.scala:9: error: ambiguous implicit values:
     both method neqAmbig1 in object Test of type [G, H, J]=> Main.$anon.Test.=!=[J,J]
     and method neqAmbig2 in object Test of type [I]=> Main.$anon.Test.=!=[I,I]
     match expected type Main.$anon.Test.=!=[Int,Int]
      implicitly[Int =!= Int]
                ^
Add a scala-typelevel project

This is where our additions to scala-library.jar will go. The current
content is the implicitAmbiguous annotation.

I seemed to have made the right changes to make the REPL, the test
classpath and scala-dist to work. I'm not sure if there's anything else
we need but I also inserted references to typelevel where library was
also referenced, just in case.
Merge pull request #32 from puffnfresh/feature/implicit-ambiguous-annotation

Add an @implicitAmbiguous annotation