1 - a) To use Flink Streaming all you need to do is to have it as a dependency as described in the documentation.  This would build it against the last snapshot that we have deployed which is updated on every successful continuous integration build (typically multiple times a day). If you want to still build Flink locally 'mvn clean install -DskipTests' does the trick, then you can use it as a dependency in your project.
1 - b) The purpose of staging is to have a repository for modules that the Flink community marks as experimental before moving them top level as you have suggested.
2) The one and only Flink Streaming is currently located under staging, but you can expect it to be moved top level in the very near future. As you have seen in 1a) this system does not affect users directly, but is rather an internal development policy.