JS now S-I-A-F (broken)
JS now S-I-A-F (fixed but has browser issues)
Re-structureed JS