Refactor Illuminate\Foundation\Application\TestCase to AssertionTrait and ApplicationTrait

This allow easier testing support for developer wanting to use testing facility other than PHPUnit such as Behat or etc.

Signed-off-by: crynobone <crynobone@gmail.com>
Add failing test

Signed-off-by: Daniel Bøndergaard <danielboendergaard@gmail.com>
Fix nested route group namespaces

Signed-off-by: Daniel Bøndergaard <danielboendergaard@gmail.com>
Throw an exception if a package is created without setting the author's email
Fix logic around marking services resolved or not

If you app->extend an object after it's been bound but before it's
been resolved, it will be initialized right away. The solution is
to just check if an object has actually been resolved rather than
if it's bound.

A related issue that can also be solved as a part of this is that
you can't extend deferred services. This has also been fixed.
tests for 3841d39
Added another missing throws annotation
Use pull instead of get and forget
Move array_* helpers function to Arr class
Use cache get default value
Use cache get default value
Use array_pull for session pull
Use pull for session initializeLocalBag
Remove duplicate id check
Remove double if
Fix log typo in docblock
Better describe fundation testing calls
Merge pull request #5123 from lucasmichot/4.2-log-docblock

[4.2] Log : fix typo in docblock
Merge pull request #5122 from lucasmichot/4.2-remote

[4.2] Remote : remove double if
Merge pull request #5118 from lucasmichot/4.2-session-setid

[4.2] Session : remove duplicate id check