bin: Add method to find by type name

A common use case of a dynamically built pipeline is that you want to
(conditionally) find a certain element, e.g. the `rtpbin`s in a
`uridecodebin`. If that element has a fixed name inside its parent bin
(and only has a single instance) this can be easily done by
`gst_bin_get_by_name()`.

If there are multiple instances of the element however, you can only use
`gst_bin_iterate_all_by_interface()`, but this doesn't work if you don't
have the specific `GType` (which is often the case, due to plugins being
dynamically loaded). As such, a last fallback is to use the well-known
name of the type (in case of our example, this is `"GstRtpBin"`). Note
however that this does not work for subclasses.
Status Job ID Name Coverage
  Preparation
passed #954564
gst indent

00:00:31

passed #954563
manifest

00:00:40

 
  Build
passed #954574
build cerbero cross-android universal

00:35:46

manual #954578
gst-ios-12.2 allowed to fail manual
build cerbero cross-ios universal
passed #954575
build cerbero cross win32

00:23:53

passed #954576
build cerbero cross win64

00:27:07

passed #954573
build cerbero fedora x86_64

00:15:21

passed #954577
gst-macos-10.14
build cerbero macos x86_64

00:39:59

passed #954569
build clang fedora x86_64

00:09:01

passed #954565
build fedora x86_64

00:05:28

passed #954572
docker windows 1607
build msys2

00:12:29

passed #954566
build nodebug fedora x86_64

00:05:35

passed #954567
build static fedora x86_64

00:12:03

passed #954568
build static nodebug fedora x86_64

00:03:24

passed #954641
docker windows 1607
build vs2017 amd64

00:10:37

passed #954571
docker windows 1607
build vs2017 x86

00:10:01

failed #954570
docker windows 1607
build vs2017 amd64

00:00:20

 
  Test
passed #954579
gstreamer
check fedora

00:03:35

failed #954580
gstreamer
integration testsuites fedora

00:42:57

passed #954585
gstreamer
valgrind bad

00:06:59

passed #954582
gstreamer
valgrind base

00:11:53

passed #954581
gstreamer
valgrind core

00:09:28

passed #954586
gstreamer
valgrind ges

00:07:36

passed #954583
gstreamer
valgrind good

00:13:47

passed #954584
gstreamer
valgrind ugly

00:02:53

 
  Integrate
passed #954587
cross-android universal examples

00:07:15

skipped #954589
gst-ios-12.2 allowed to fail manual
cross-ios universal examples
passed #954588
documentation

00:02:59

 
Name Stage Failure
failed
integration testsuites fedora Test
!! Could not derive your terminal width !!
Uploading artifacts...
gst-build/build/meson-logs/: found 2 matching files
validate-logs: found 69914 matching files

Uploading artifacts to coordinator... ok
id=954580 responseStatus=201 Created token=mNK6dxz4
Uploading artifacts...
validate-logs/*.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=954580 responseStatus=201 Created token=mNK6dxz4
ERROR: Job failed: exit code 1