High-tech dishonesty: cheating, plagiarism and detection