Add back SmokeMethodDescr to handle static/instance methods.

C++ can have same named static as well as instance methods which
must be handled in pysmoke resulting in the need for the method
descriptors.
Also removed the `is_static_method` method of `ClassDef`, since
the name is insufficient to determine whether the method would
be static or not.
Also changed test runner to `unittest discover` since `nosetests` was
messing file classes causing failures