2021 Javascript II Free Code Camp Material Covered ES6 Basic Data Structures Basic Algorithm Scripting Functional Programming Intermediate Algorithm Scripting New Concepts node and server side code npm git