change id to String
add goal functionality, goal/account bidirectional and id String based