Updated lcd module and replaced the main update function with code
which checks both the current cycles and the current mode in relation
to what actions should take place and what mode should be selected
next. Before this was just checking the current cycles. A few games
that failed to startup appear to now be functioning correctly