Don't cleanup whitespace for some modes

Modes that use indention like Python mode aren't able to correctly
determine what level of indentation to return to, so it's better to not
to eat all the whitespace after killing words.

Basically the behavior that this changes can be demonstrated as

`^` indicates the location of the cursor

before
```python
for l in lines:
    if out:
        res['total'] = int(out.group(1))
    if l.startswith("="):
      ^
```
after `sp-backward-kill-word`
```python
for l in lines:
    if out:
        res['total'] = int(out.group(1))
  l.startswith("="):
  ^
```

after applying this patch and `sp-backward-kill-word`
```python
for l in lines:
    if out:
        res['total'] = int(out.group(1))
     l.startswith("="):
    ^
```