code: def parse_single_value(value):
      
      if isinstance(value, basestring):
          try:
              if value.startswith('"') and value.endswith('"'):
                  value = str(value[1:-1])
              elif '.' in value:
                  value = float(value)
              else:
                  value = int(value)
          except ValueError:
              value = str(value)
      elif not isinstance(value, (int, float)):
          raise ArcanaUsageError(
              "Unrecognised type for single value {}".format(value))
      return value
docs: Tries to convert to int, float and then gives up and assumes the value
      is of type string. Useful when excepting values that may be string
      representations of numerical values