added some crates
modified the cursorvisible implementation