FIX: 73f58dc56a broke XML variant of scripting console response, and will
  produce incompatible structure (extra nesting with scriptExec element).
  moved ScriptExecution code to ScriptModel, which is now a bean, not Map.
  XmlMarshaller is extended to support simple JavaBeans to XML marshalling,
  borrowing annotation classes from javax.xml.
ADD unit test for XmlMarshaller
HER-2040 ExtractorJS shouldExtract when content-type is application/json
new contrib subproject for extra generally useful modules not part of the main distribution
import Adam's ExtractorYoutubeFormatStream from its former home https://github.com/adam-miller/ExtractorYoutubeFormatStream
extractIndependently=true so that earlier ExtractorHTML extraction doesn't stop us from extracting here; also use java.net.URLDecoder
ExtractorYoutubeFormatStream.java
	Parse parameters instead of attempting to regex desired values
	Add priority itag list and extract limit

ExtractorYoutubeFormatStreamTest.java
	Test cases for extracting all videos and extracting single video
make ExtractorYoutubeFormatStream extend Extractor instead of ContentExtractor because we don't really want the extra stuff that ContentExtractor does
only extract urls that look like youtube watch pages
test crawl reveals generate_204 urls apparently not needed
implement itagPriority and extractLimit parameters
address HER-2042 - new annotation duplicate:uriAgnosticDigest for all url agnostic duplicates, whether written to warcs or not; stats consult this annotation so that duplicate/novel numbers are correct
revised scripting console xml response fix based on comments.
removed scripting console actions from ScriptModel into ScriptingConsole
class (resurrection of ScriptExec).
added basic ScriptingConsoleTest.
Merge branch 'topic/scripting-xml-fix'
ExtractorYoutubeFormatStream.java
	Adjusting json extraction regex to account for semi-colons within the content

ExtractorYoutubeFormatStreamTest.java
	New test case for semi-colon in json content
Merge branch 'master' of https://github.com/internetarchive/heritrix3
make code formatting consistent with main heritrix proj by changing spaces to tabs; also remove unused imports from HBase.java, no other substantive changes
pom.xml
	Adding heritrix-engine dependency

XmlCrawlSummaryReport.java
	XML version of the CrawlSummaryReport

ExtractorYoutubeFormatStream.java
	Adding sample bean to docs
merged Kenji's change to hbase de-duplication module:
- SingleHBaseTable using single HTable instances (no HTablePool) with
backing-off upon communication errors.
- FetchHistoryHelper for allowing multiple crawl history sources.
- row key backward compatibility mode.
add contrib/target to .gitignore