Many fixes, added spin.js