refactored unit link unlink into update_link
refactoring shuriken
added Base, and moved some methods up into Base.