Add template and better defaults for UDPScanner

This is based on [this email](http://sourceforge.net/p/metasploit/mailman/message/32648580/) where I suggested that someone start contributing example/template modules for specific types of tasks.  These example/template modules should be as perfect as possible, allowing contributors to quickly copy it, change a few things and be off and running.  The resulting code and experience should be as ideal as possible when starting with this code, and resulting PRs using these example modules should be considerably easier to write and far cleaner.

This just handles it for UDPScanner, which I happen to spend a lot of time writing/reviewing/using.

In addition to the template itself, I've made numerous other changes to related files.  Of note:

* I shut rubocop up even more.  It now has 0 complaints about the example module
* I bumped the default ```THREADS``` to 10.  This was based on some discussion internally around the default performance of ```UDPScanner``` and that in its default mode it only performs nicely when scanning a /24.  But, it isn't obvious that you may need to tweak ```THREADS``` if you are scanning larger networks, so I picked what I think is a reasonable default.  The thinking is that it will have no adverse affects on scanning smaller networks, but will have a positive impact when scanning networks larger than /24
* Moved most of the probing/reporting logic that 95% of all ```UDPScanner``` modules do into ```UDPScanner``` itself.  

The end result of this allows me to copy this example, change the defaults in ```initialize```, and then simply set ```@probe``` and I have a nice scanner that works and is friendly

# Validation

 - [ ] Critique everything about the example module
 - [ ] Simulate the process a user would follow when copying from this module.  Is it as ideal as possible?
 - [ ] Try other existing ```UDPScanner``` modules.  (I actually suspect some will have minor cosmetic regressions)
This template can be used and does do something, it just isn't particularly useful :).  Again, the point of having it somewhere under ```modules``` isn't so that an end user can use it like they would the other modules, necessarily, but so that a developer can ensure that a module based on this would actually work like they wanted.  Think of it like a module test drive.  

Thanks for the pointer to ```documentation```.  Beyond the IE module in there, a lot of what is in there seems pretty dated but the intent seems right.

Why not move all of ```documentation/samples/modules``` and my module into ```modules/samples``` or something similar?  That way these can be ```used``` and worked on just like other modules and there is one location for template/samples/examples.  Couple that with a quick blog post and a pointer in the documentation....