Index: issm/trunk-jpl/src/m/qmu/helpers.py
===================================================================
--- issm/trunk-jpl/src/m/qmu/helpers.py	(revision 24213)
+++ issm/trunk-jpl/src/m/qmu/helpers.py	(revision 24254)
@@ -24,24 +24,24 @@
 Example uses:
 
-x = Lstruct(1, 2, 3, 4) - > [1, 2, 3, 4]
+x = Lstruct(1, 2, 3, 4) -> [1, 2, 3, 4]
     x.a = 'hello'
-    len(x) - > 4
+    len(x) -> 4
     x.append(5)
-    len(x) - > 5
-    x[2] - > 3
-    x.a - > 'hello'
-    print x - > [1, 2, 3, 4, 5]
-    x.__dict__ - > {'a': 'hello'}
+    len(x) -> 5
+    x[2] -> 3
+    x.a -> 'hello'
+    print x -> [1, 2, 3, 4, 5]
+    x.__dict__ -> {'a':'hello'}
     x.b = [6, 7, 8, 9]
-    x.b[-1] - > 9
-    len(x.b) - > 4
+    x.b[-1] -> 9
+    len(x.b) -> 4
 
 Other valid constructors:
-          x = Lstruct(1, 2, 3, a = 'hello') - > x.a - > 'hello', x - > [1, 2, 3]
+          x = Lstruct(1, 2, 3, a = 'hello') -> x.a -> 'hello', x -> [1, 2, 3]
           x = Lstruct(1, 2, 3)(a = 'hello')
           x = Lstruct([1, 2, 3], x = 'hello')
           x = Lstruct((1, 2, 3), a = 'hello')
 
-Credit: https: / / github.com / Vectorized / Python - Attribute-List
+Credit: https://github.com/Vectorized/Python-Attribute-List
 '''
 
@@ -63,5 +63,5 @@
 class OrderedStruct(object):
     '''
-A form of dictionary - like structure that maintains the
+A form of dictionary-like structure that maintains the
     ordering in which its fields / attributes and their
     corresponding values were added.
@@ -70,5 +70,5 @@
     can be used as an "ordered struct / class" giving
     it much more flexibility in practice. It is
-    also easier to work with fixed valued keys in - code.
+    also easier to work with fixed valued keys in-code.
 
 Eg:
@@ -79,7 +79,7 @@
     x.y = 5
     OR
-    x['y'] = 5  # supports OrderedDict - style usage
-
-Supports: len(x), str(x), for - loop iteration.
+    x['y'] = 5  # supports OrderedDict-style usage
+
+Supports: len(x), str(x), for-loop iteration.
 Has methods: x.keys(), x.values(), x.items(), x.iterkeys()
 
@@ -94,18 +94,18 @@
     #    in the same order as the inputs
 
-    x.keys() - > ['y', 'z']
-    x.values() - > [5, 6]
-    x.items() - > [('y', 6), ('z', 6)]
-    x.__dict__ - > [('y', 6), ('z', 6)]
-    vars(x) - > [('y', 6), ('z', 6)]
-
-    x.y - > 5
-    x['y'] - > 5
-    x.z - > 6
-    x['z'] - > 6
+    x.keys() -> ['y', 'z']
+    x.values() -> [5, 6]
+    x.items() -> [('y', 6), ('z', 6)]
+    x.__dict__ -> [('y', 6), ('z', 6)]
+    vars(x) -> [('y', 6), ('z', 6)]
+
+    x.y -> 5
+    x['y'] -> 5
+    x.z -> 6
+    x['z'] -> 6
 
     for i in x:  # same as x.items()
         print i
-     - >
+     ->
     ('x', 5)
     ('y', 6)
@@ -197,5 +197,5 @@
         # same thing but call deepcopy recursively
         # technically not how it should be done,
-        # (see https: / / docs.python.org / 2 / library / copy.html  #copy.deepcopy )
+        # (see https://docs.python.org/2/library/copy.html  #copy.deepcopy )
         # but will generally work in this case
         newInstance = type(self)()
@@ -227,6 +227,6 @@
 def isempty(x):
     '''
-    returns true if object is +  - infinity, NaN, None, '', has length 0, or is an
-    array / matrix composed only of such components (includes mixtures of "empty" types)'''
+    returns true if object is +  -infinity, NaN, None, '', has length 0, or is an
+    array/matrix composed only of such components (includes mixtures of "empty" types)'''
 
     if type(x) in [list, np.ndarray, tuple]:
@@ -247,5 +247,5 @@
     if x is None:
         return True
-    if type(x) == str and x.lower() in ['', 'nan', 'none', 'inf', 'infinity', ' - inf', ' - infinity']:
+    if type(x) == str and x.lower() in ['', 'nan', 'none', 'inf', 'infinity', '-inf', '-infinity']:
         return True
 
@@ -280,5 +280,5 @@
 def fileparts(x):
     '''
-    given:   "path / path / ... / file_name.ext"
+    given:   "path/path/.../file_name.ext"
     returns: [path, file_name, ext] (list of strings)'''
     try:
@@ -300,7 +300,7 @@
 
     fullfile(path, path, ... , file_name + ext)
-    returns: "path / path / ... / file_name.ext"
-
-    with all arguments as strings with no " / "s
+    returns: "path/path/.../file_name.ext"
+
+    with all arguments as strings with no "/"s
 
     regarding extensions and the '.':
@@ -331,5 +331,5 @@
 def empty_nd_list(shape, filler=0., as_numpy_ndarray=False):
     '''
-returns a python list of the size / shape given (shape must be int or tuple)
+returns a python list of the size/shape given (shape must be int or tuple)
     the list will be filled with the optional second argument
 
@@ -338,6 +338,6 @@
     as_numpy_ndarray will return the result as a numpy.ndarray and is False by default
 
-    Note: the filler must be either None / np.nan / float('NaN'), float / double, or int
-        other numpy and float values such as + / - np.inf will also work
+    Note: the filler must be either None/np.nan/float('NaN'), float/double, or int
+        other numpy and float values such as +/- np.inf will also work
 
 use:
