Fix Str::contains(), startsWith() and endsWith() with empty needles.

The behavior in these cases has been unified:
- return false
- no longer produce warnings
Optimize Str::endsWith()
Docblock and code uniformization in Str class
Change __call target.
Resolve from container again in meantime while figuring out issues.
Fix bug with setting save keys.
Merge branch 'str-class' of https://github.com/vlakoff/framework into str-helpers
Adding another test to string tests.
Merge branch '4.0'
Merge branch 'master' of github.com:laravel/framework