Generalize calls to monad functions

Use call instead of : to call functions on monad modules in order to
support tuple modules. This will come in handy when implementing monad
transformers.
State Transformer
Remove monad atom evaluation skipping in macros
fixup state transformer monad
wip: modify-and-return
Add state monad and behaviour
Fix monad behaviour callback
Modify the monad test macros to work with state

If the monad being tested implements the new state behaviour, evaluate
the expected value and the result by running them both against a default
state before comparing them.
Fix state-transformer:modify-and-return

The method was returning a single value, rather than the necessary tuple
required for binding to work.
Apply the generic monad tests to state-transformer
Remove lfe sample rebar plugin dependency
Rename modules with calrissian- prefix
Add macros to simplify monad usage
Remove unnecessary state monad implementation

(monad 'state) is synonymous with (transformer 'state 'identity). The
monad macro has been updated to reflect that.
Bump version and update README
Update Makefile using current lfetool (v1.0.0)
Add OTP version 17.0 to the travis build config