SMI-S Plugin: Fix a constant typo in MegaRAID pool query.

 * Incorrect: Pool.ELEMENT_THIN_VOLUME_FULL
   Correct:   Pool.ELEMENT_TYPE_VOLUME_FULL

Signed-off-by: Gris Ge <fge@redhat.com>
Plugin Test: Fix the sha-bang line of plugin_test.py

 * Changed the sha-bang line of plugin_test.py:
    Old:
        #!/bin/env python2
    Now:
        #!/usr/bin/env python2

Signed-off-by: Gris Ge <fge@redhat.com>
RPM SPEC: Add OpenSuSE support.

 * Please don't commit this patch until we got feedback from openSuSE user.

 * This is based on rpm SPEC provided by Nick Wang <nwang@suse.com>.

 * Use %if 0%{?suse_version} to use SuSE only setting.

 * Replaced '/bin/systemctl' command with %systemd_xxx macros which was
   provided by /usr/lib/rpm/macros.d/macros.systemd by systemd rpm.
   # For SuSE, they use %service_xxx instead.

 * Removed command "systemctl enable libstoragemgmt.service".
   We should use systemd.preset instead.
   For RHEL 7 and Fedora, systemd.preset enabled libstoragemgmt.service.
   So nothing actual changed.

 * Add %post script to libstoragemgmt-rest package.

 * Make sure all folder is owned by certain rpm package by add lines like:
        %dir %{python_sitelib}/lsm/plugin/sim

 * Move 'libstoragemgmt-rest.service' systemd file to libstoragemgmt-rest
   package. (Old RPM SPEC was including it in libstoragemgmt.rpm)

 * On openSuSE, the package name has been changed due to their share lib naming
   policy[1]:
    libstoragemgmt-devel
    libstoragemgmt-udev
    libstoragemgmt1
    libstoragemgmt1-python
    libstoragemgmt1-smis-plugin
    libstoragemgmt1-netapp-plugin
    libstoragemgmt1-targetd-plugin
    libstoragemgmt1-nstor-plugin
    libstoragemgmt1-rest

 * Run fdupes on OpenSuSE to create soft link against duplicated
   python .pyo and .pyc files.
   For Fedora, it will conflict with brp-python-bytecompile.
   For RHEL, fdupes is in EPEL repo.

 * Move '/var/run/lsm' folder creation to %pre script as a rpm package should
   not own a ghost file in /var/run which might be mounted as tmpfs.

 * Add %post and %postun scripts into plugin package to 'try-restart'
   the libstoragemgmt.service when new install or package removal.
   This is only for systemd as RHEL 6 does not have 'try-restart' feature yet.

 * On openSuSE, use 'LGPL-2.1+' string due to openSuSE requirements.

 * Compile pass on OBS for Fedora 19/20, RHEL 6/7, OpenSuSE 13.1/13.2

 * Manually tested via 'lsmcli lp' against simulator C and python plugin,
   smispy plugin, ontap plugin and targetd plugin on these OS:
    * RHEL 6.5 x86_64
    * RHEL 7.0 x86_64
    * Fedora 20 x86_64
    * OpenSuSE 13.1 x86_64

[1] https://en.opensuse.org/openSUSE:Shared_library_packaging_policy

Signed-off-by: Gris Ge <fge@redhat.com>
SMI-S Plugin: Restrict VPD83 to NAA Type 3 ID.

 * Only accept NAA Type 3 ID from CIM_StorageVolume as that's what
   '/usr/lib/udev/scsi_id'[1] do.

 * No regression found as those not support NAA Type 3 already filterd out
   by previous regex match '^[a-fA-F0-9]{32}$'.

 * Removed IBM workaround code as NodeWWN is not what we need. It already
   filtered out by previous code.

 * Introduced a non-standard(at least I didn't found) for NetApp, they are
   using 'OtherNameNamespace', 'OtherNameFormat'.

 * Tested on:
    EMC VNX/VMAX
    Fujitsu DS
    HP 3PAR
    Dell
    Dot Hil
    LSI MegaRAID.

 * Not work on(already informed):
    IBM XIV
    HDS AMS

[1] device-mapper-multipath is using that tool to get WWID from SCSI disk.
    while WWID is 3 + VPD83 NAA Type3 ID.

Signed-off-by: Gris Ge <fge@redhat.com>