Copied DBM to sandbox/dbm_v2 and stripped down.

dbm_v2 is an attempt to refactor and redo some of the core aspects of DBM.
Currently it is a stripped down version of models/dbm to support only:
RBM
Updown Inference
Gibbs sampling
BaseCD
VariationalCD

I have included some tests for RBM CD to get things moving.
There are some changes found in other PRs, namely to:
dbm_cost.py: refactored a little bit to make it cleaner and get BaseCD working.
dbm.py: introduced RBM and a method for DBM to intialize its own chains.

and a few other smaller changes and docs found in other PRs.
VariationalCD is now a simple subclass of BaseCD, with behavior defined by positive_method and negative_method