Modifications to the metrics framework API and new features.

- Metrics:ID enum has been replaced with strings.

- Uniqueness can now be measured with the Metrics::add_unique function.

- Filters can change the index value with the $normalize_func field.
Ported scripts using metrics framework and added a new smtp script.

- New script measures a couple of aspects of SMTP traffic.

- Existing metrics scripts had a small amount of work done
  to make them work with changes to metrics framework.
Cluster support for the metrics framework returns and all tests work again.
Some scripts for collecting connection stats and "app" stats.

- App stats are considered stats for applications on the internet.
  Services like facebook, youtube, etc.
The app metrics break interval is now configurable.
basic sqlite writer seems to work.

does not support table and vector types because SQLite has no support for arrays.
also does not support rotation, etc.

Not really tested thoroughly - but starting bro with Log::default_writer=Log::WRITER_SQLITE
yields a couple of sqlite files that seem to contain sensible stuff.
Merge remote-tracking branch 'origin/master' into topic/bernhard/sqlite
now the writer supports tables and vectors.

still not tested, but using Log::default_writer=Log::WRITER_SQLITE seems to generate all
the right log-databases, etc.
Merge branch 'topic/bernhard/reader-info' into topic/bernhard/sqlite

Now uses optional dbname configuration option

Conflicts:
	scripts/base/frameworks/logging/__load__.bro
	src/logging.bif
Merge remote-tracking branch 'origin/master' into topic/bernhard/sqlite

Conflicts:
	scripts/base/frameworks/logging/__load__.bro
	src/CMakeLists.txt
	src/logging.bif
	src/types.bif
...adapt to new api...
Merge remote-tracking branch 'origin/master' into topic/seth/metrics-updates

Conflicts:
	testing/btest/Baseline/scripts.base.frameworks.metrics.basic-cluster/manager-1.metrics.log
	testing/btest/Baseline/scripts.base.frameworks.metrics.basic/metrics.log
	testing/btest/Baseline/scripts.base.frameworks.metrics.cluster-intermediate-update/manager-1.notice.log
	testing/btest/Baseline/scripts.base.frameworks.metrics.notice/notice.log
	testing/btest/scripts/base/frameworks/metrics/basic-cluster.bro
Merge remote-tracking branch 'origin/master' into topic/bernhard/sqlite
Added function to intercept threshold checking
Merge branch 'fastpath' into topic/bernhard/sqlite
Merge branch 'fastpath' into topic/bernhard/sqlite
add SQLite reader.

Probably memleaky as hell, does not support tables/vectors yet, but it
managed to successfully read very simple tables.
Added the branch /testing
Started the branch testing2
Added str to pred function