Scoping functioning and adds basic variable types, including nested