#3: backward compatibility with neuron 1.x
#3: fix a spelling error
#3: update attributes to the newest; TODO: use attributes directly
#3: use util.isXXX instead of _.isXXX
#3: fix package.json
#3: fix the silly method _.isObject() of underscore;
#3: update to the newest attributes
#3: finish test cases of attributes
#3: add legacy method ins.off()
#3: finish test cases for events
#3: update attributes
#3: fix test cases for attrs
#3: complete all functionalities; complete test cases