Copy Guice's SourceProvider into Play

It is a class that's in Guice's internal package so we should not be using it in this way. It is moved or deleted in Guice 4.0