Adding CCDA generation to BB.js using EJS templating

Building off work by @kachok at Amida Tech, this branch adds the ability to pass BB.js its own JSON and get a CCDA out. I have tried several CCDAs that pass the TTT (http://transport-testing.nist.gov/ttt/) and parsing them through the BB.js and then converting that JSON back to CCDA using BB.js produces output that still passes the CCDA (though with some data loss in the middle)

As part of making a passable CCDA, this change also adds smoking status support and several new codes (race, ethnicity, language, personal role) to BB.js