Update App::classname for more flexiblity

Allow using `/` within a classname, previously the following would fail:

    App::classname('Some/Class', 'Namespace');

Even if `App\Namespace\Some\Class.php exists
add no suffix tests
Merge pull request #2432 from AD7six/3.0-3.0-app-classname

Update App::classname for more flexiblity