restructure and implement first basic transaction#edit