demo: create splitted table + appropriate row keys

To make the demo more interesting on a real cluster, create a pre-splitted table so that the whole cluster will be replicating from the beginning.
Removed dashes from the default uuid.tostring representation so that they don't appear in the part of the string that is used for split selection.
Separating RPM generation into a separate profile to enable builds on non-RPM based Linux distros
Merge branch 'master' of github.com:NGDATA/hbase-indexer
Merge branch 'master' of git://github.com/rvs/hbase-indexer into rvs-master
explain rpm->dist profile dependency
README: add link to sep blog post on ngdata.com
Remove broken demo environment download
DISTRO-506 Allow specifying HBase master port

Allow specifying the HBase master webui port manually
with the SEP monitoring tools. The SEP tools load the HBase config
from the HBase master webui, making the webui port the only
thing that would possibly need to be manually specified.
DISTRO-505 Validate config settings before startup

Validate configuration settings before staring an hbase-indexer
server. This allows quickly avoiding the situation where indexes
can be created with invalid HBase settings.
CDH-13042: add morphline support to hbase indexer
remove attachments before extracting data
remove attachments before extracting data
remove some unnecessary dependencies
Add strawman to allow custom name resolution (not a public API yet)

    /**
     * Override for custom name resolution, if desired. For example you could override this to
     * translate human readable names to Kiji-encoded names.
     */
    protected String resolveColumnName(String inputColumn) {
      return inputColumn;
    }
work-around for race conditions stemming from SEP threading model

  /*
   * TODO: Looks like SEP calls the *same* MorphlineResultToSolrMapper instance from multiple
   * threads at the same time. This would cause race conditions. It would be more efficient,
   * scalable and simple for SEP to instantiate a separate ResultToSolrMapper instance per thread on
   * program startup (and have one or two threads per CPU core), and have each thread reuse it's own
   * local ResultToSolrMapper many times. For now we use a crude lower-level pooling work-around
   * below.
   */
  private final BlockingQueue<LocalMorphlineResultToSolrMapper> pool = new LinkedBlockingQueue();
add basic integration test
Refactoring morhlines code into its own module