I'm not sure why these questions threaten your sanity, but...
Why would someone use com.android.wallpaperpicker? To change the wallpaper on their home screens.
Why would someone use com.android.messaging? Presumably because that's the default SMS app on their phone and they haven't installed a different one.
Why would someone use com.android.launcher? Same answer as for the message app. The "launcher" is the app that produces and manages your home screens and app drawer, so Android is pretty well unusable without one. Unlike iOS though you can install a different one if you find one you prefer.
Application packages all have names like "domain.developer.app". They also have a more "user-friendly" name which is what you see on the home page or in the system menus, but in system logs etc you will see the actual package name. Some can be obvious, e.g. the "BBC Sounds" app is "com.bbc.sounds". Some can tell you that the developer is a bit of a child, e.g. "Facebook" is "com.facebook.katana" (why name a badly-optimised social media app after a Samurai sword, other than that you think it makes you sound cool?). And some can be obscure, e.g. how would you guess that "com.microsoft.emmx" is the "Edge" browser? Things that start "com.android" will definitely be things that were included in the original android system though.
If you are trying to understand every process that runs on your phone you need to know that these things are computers, and like computers they have a lot of processes running in the background to make them work. There is a lot more going on than just the app you run, and unless you invest a lot of time into educating yourself there will be a lot of things you see there that you don't recognise or can't easily guess what you are doing. Hence my top tip is not to worry yourself when you don't know what every single process you see on your phone is there for.