Notify caller of sync/spawn command errors
Update otp_release list in .travis.yml

Changes:
* Removed R14* Erlang version targets from `.travis.yml`
* Added R15B* and R16B Erlang version targets to `.travis.yml`

Background:
Until this change Travis CI was building against Erlang R14 which is not
supported for Riak (KV) according to [Basho documentation]
(http://docs.basho.com/riak/latest/ops/building/installing/erlang/),
which states, *"Riak requires Erlang R15B01"*. These consistently failed
since the ring resizing change was merged.

Since `.travis.yml` was updated last (a year ago) R15B0{2-3} and R16B
were released. R16B01 and R16B02 to not appear to be offered as choices
in Travis CI yet ([according to Travis CI's documentation]
(http://about.travis-ci.org/docs/user/languages/erlang/)).
Fix bad type specifications.

max_nb_const should be widened to include 'undefined', considering how
all callers into this function only ever pass undefined at this point.

Also, define a new 'target' type which is used, because currently, the
type is declared as string which is incorrect and triggering dialyzer
type warnings anywhere this type is referenced.
Update lager dep to 2.0.1
riak_core_metadata:to_list/1,2

these are convenience functions for debugging and testing, although
probably not so useful for production code
close metadata fold iterators upon termination

as of 0b59e4cd30ffedd29cea592f2edb347f41095019, iterators must be
closed when they are no longer used.

addresses #450
option to prevent writes of resolved values on metadata read

a new option, {allow_put, boolean()} can be passed to get/3,
iterator/2, fold/4, or to_list/2. the default is to perform the write.

addresses #440
Merge pull request #454 from project-fifo/schema-handoff_concurrency

Added handoff concurrency setting to schema.
increase broadcast's initial eager set size for larger clusters

increasing the fanout reduces the chance of requiring exchange to deliver
messages to all alive nodes during a broadcast. This patch decreases the
likelyhood by 20 to 30 percent, on average.

The chosen fanout is determined by the discrete function
`round(log(NumNodes)+1)`, where `log(x)` is the natural log and `NumNodes`
is the number of nodes in the cluster.  For practical cluster sizes,
this curve has a maximum fanout of about six peers, dependning on what
is considered the upper limit of practical cluster sizes.

addresses #438
enable read/write_concurrency on cluster metadata ets tables

addresses #443
Fix riak_core_tracer: call order matters with R16B02
Added initial vclock eqc_statem.
eunit-ify the vclock_qc
Generate the model along with the concrete in gen_vclock().
Make property operate on many vclocks.
Add vclock:dominates/2 with property.
Remove unused generators, clarify the collect, add an eunit timeout and more commands.
Update dominates/2 to use equal/2, QC property is broken.
Adjust EQC model to handle timestamps.
Add convenience funtions for running vclock eqc from console