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.
The purpose of the whitelist is to avoid having existing code make the test fail. Before we merge new code, it should pass the formatting tests. In other words, we should only ever remove items from the whitelist, not add them.