commiting a couple of on going changes after discovering what I really need to implement - but before implement it
basic reestructuring done
reestructuring done