basic struct written
added references
added references
basic working prototype