Probando GitHub. Subiendo Cambios sugeridos por JSLint

* Se movió el orden de las declaraciones de variables y funciones. No se
debe definir la llamada a una función antes de haber sido declarada
* Se unificó la declaración de las variables al inicio de cada función
(hoisting)
* Se ajustaron los espacios
* Se cambiaron las comparaciones tipo "truthy" (se usa '===' en vez de
'==', '!==' en vez de '!=')
* Se agregó el radix base 10 en las llamadas a parseInt
* Se quitó el follow-through en los case statements
* Se simplificaron algunas condiciones if a return statements

Nota: estoy corriendo JSLint con todas las reglas encendidas. Crockford
es medio cuadrado, yo esoty acostumbrado a trabajar con esta sintaxis y
espaciado,
pero muchas veces se siente como que son demasiadas reglas. Si quieren
podemos relajar algunas