Update rebar to 2.2.0 to support the rebar scripts.
Merge pull request #447 from pooya/shayan/rebar_update

Update rebar to 2.2.0 to support the rebar scripts.
add docker files
Merge pull request #444 from gijzelaerr/docker

Add a docker file (and support files) to contrib
install correct erlang package
Merge pull request #448 from gijzelaerr/dockerfix

install correct erlang package
Clean up the docker readme.
Rename README to README.md
Reorganize the docker makefile.
Avoid using list_to_atom for finding the module name.

According to Erlang efficiency guide, using list_to_atom in this manner
is a bad practice.
Make sure the json validator does not create new atoms.

All of the not_* atoms created in the validate method should be known already.
Use byte_size instead of size to help compiler optimizations.

This is based on the suggestions from:
http://www.erlang.org/doc/efficiency_guide/commoncaveats.html
Merge pull request #449 from pooya/perf

Perf
Spread the schedulers as much as possible.

This option will bind the erlang schedulers to the cpu cores.  According
to the erl documentation, this will improve the performance when we
only have one erlang OS process.  We are assuming that this is the
common case.
It is not guaranteed that this will succeed.
Avoid scheduler compaction.

By default, the erlang run-time tries to move the jobs from higher id
schedulers to lower-id schedulers to improve locality.  However, this
may result in long run-queues in the system.
Merge pull request #450 from pooya/scheduler

Scheduler
Re-enable json validator tests.

Mochiweb has been added as a dependency so that eunit can find it for testing.
Merge pull request #451 from pooya/json_validator

Re-enable json validator tests.
Avoid calling clean in erlangtest.

This is not necessary and increases the incremental compilation times.