add: lots of features; improve: general design;
merging dev branch
brunch commit