More features, some refactoring

Invoke-Pester's -Coverage parameter (renamed from -CoveragePath) can now either accept strings (paths), or hashtables.  If you use a hashtable, it must contain a Path key (which can actually be named Path, p, FilePath, File, or f... maybe went overboard there), and may optionally contain StartLine (or start or s) and EndLine (or end or e) keys which allow you to narrow down the coverage analysis to a particular part of a file.

Coverage paths may now contain wildcards as well.

Nice-to-haves:  Maybe allow Function names in these hashtables, instead of requiring line numbers.  The AST makes it easy to find those anyway; it's just a matter of parsing the user's input in an organized manner.  Polymorphism would be nice right about now.  Do we have those v5 classes yet?  :)  This would allow for a more persistent way of analyzing coverage, without having to look up new line numbers every time you change a file.