Principles from the book Godel, Escher, Bach put into javascript.