moving towards better practices, eg changing structs that should be classes into class and using vector instead of arrays