Merge branch 'rtong' into bowen
update button
expand and undo
change
first page undo complete

by now, no bugs found
add auto_assign_button

add 5 functions:
1. expand()
2. expandAll()
3. shrink()
4. shrinkAll()
5. undo_assign()
Merge branch 'bowen' into rtong