ryanmcdermott /clean-code-javascriptJavaScript95K13KClean Code concepts adapted for JavaScriptjavascriptprinciplescompositioninheritance