basic function

完成基本功能
嗯，先确定基本功能实现的方向没问题，然后再继续补npm相关、测试代码这些；
要现在就先把代码风格调整了才能合并嘛，我打算开发完最后用jformatter做，不然我自己开发看着不习惯。