Stop all yokozuna supervisors rather than crash full node
Remove trap exit and let the node crash
Merge branch 'master' into er-port-in-use-crash
Check for undefined solr port process

The main purpose of this commit was to avoid calling
`proplists:get_value` on an undefined port (Erlang port, not socket).
This would happen when the Solr process has a non-zero exit,
e.g. because the specific socket port number is already bound.

Some additional fixes I made along the way:

* Move `getpid` function in API section where it belongs.

* Fix the exit status match in `handle_info`.

* Check for a regular port exit msg in `handle_info`.

* Only close the port in `terminate` if the pid is not `undefined`.
Move Solr proc server under yz_sup

Move the solr proc server under the yz_sup so that max restart
frequency will actually be reached and shutdown the Riak node.  The
thinking is that if Solr cannot run then Riak should shutdown to avoid
missing index data and other badness.  That is, better to have a
downed node than one that is partially up.
Merge pull request #136 from basho/er-port-in-use-crash

Fix various things in Solr startup