Improvements to OpenStack inventory script

This adds the option to use common environment variables instead of the just the INI for common things like password and auth URL.  It creates inventory groups for each key/value in the metadata dictionary similar to the ec2.py scripts (but keeps the special group metadata tag as well for backwards compatibility), and adds the _meta host var dictionary added in 1.3 that speeds things up quite a bit. It also adds a configurable flag as to whether to prefer the public or private IP (fixed or floating) of each instance, and prints the json in a more human friendly format.
So I tested your PR and adding `service_type` and not creating a default for it causes it to fail with an older .ini file that doesn't specify `service_type`. I submitted the following PR to fix this issue: https://github.com/carsongee/ansible/pull/1