Updated documenation & sped up _cycle func using structs