New: Added no-trailing-spaces rule (fixes #995)

`on` perf:

```
CPU Speed is 2261 with multiplier 7500000
Performance Run #1:  2922.464079ms
Performance Run #2:  2915.99096ms
Performance Run #3:  2871.693ms
Performance Run #4:  2842.881841ms
Performance Run #5:  2869.45368ms
Performance budget ok:  2871.693ms (limit: 3317.1163202122952ms)
```

`off` perf:

```
CPU Speed is 2261 with multiplier 7500000
Performance Run #1:  2874.2219999999998ms
Performance Run #2:  2815.7648ms
Performance Run #3:  2869.23876ms
Performance Run #4:  2908.95748ms
Performance Run #5:  2862.79916ms
Performance budget ok:  2869.23876ms (limit: 3317.1163202122952ms)
```

> @jrajav your bench is not correct. Running plain match will not give you offset in string. It's useless for this plugin task. Alternative is calling exec multiple times, and i doubt, that result will be so good.

Good point, I missed that. However, it looks like RegExp.exec is faster than both String.match and String.replace: http://jsperf.com/match-vs-replace-jr/2. I even added a `.forEach` loop after the exec loop to simulate the function calls that .match and .replace make.

> PS. $ with 'm' flag is better, you are right. I did not understood, that you were speaking about multiline mode in first comment.

Sorry, I should have clarified.

If you don't have enough time to continue with this PR, I'd be happy to pick it up.