Added CI TODO for different platforms

Software that is not compilable on the linux platform must have CI implemented 
via slave node which can compile for that target platform (eg. ios).
Updated samba configuration

Previously, nodes on the local network could not access the samba share. This 
commit ensures hosts on the local network can access the share.
Updated git mirror list.
Updated rsnapshot configuration

Previously, monthly backups were held for the last 3 months. This has been 
changed to keep a year's worth of monthly backups.
Added root user password management via hiera
Added fvwm window manager and corefonts to xorgserver pattern

- fvwm is the alternate window manager (alternate to ratpoison), which is 
  intended to be used with programs that are not friendly to tiling window 
  managers (eg. GIMP)
- corefonts has been added since it includes Times New Roman
Added composer to the php pattern

Composer has been added to manage PHP project dependencies, much like gems and 
Gemfiles
Added iotop and traceroute packages, as well as the acpid service

- iotop has been added in order to easily monitor applications using the most IO  
  resources
- traceroute has been added to monitor network latency from the local network to 
  external networks
- the acpid service has been added to allow for managing node startup and 
  shutdown, specifically for guest nodes so that host shutdown commands function 
  properly
Updated workstation pattern with laptop resources and some new applications

- Laptop resources have been added since workstations will now all be laptops.  
  The resources allow for use of bluetooth, wireless internet, power saving and 
  a fingerprint reader.
- Also added several new applications- flash player, feh for image viewing, 
  fbreader for reading individual ebook files, espeak for text-to-speech, mupdf 
  for viewing pdf files, libreoffice for office-oriented work, vlc for videos 
    dbus so that calibre may communicate with ereaders, and added the jpeg flag 
    to imagemagick's USE flags
Updated mira workstation node

- Added a global bluetooth USE flag so that bluetooth support is compiled in any 
  emerged package
- Set the video card to nouveau, the open source graphics device driver for 
  nvidia cards. The current target workstation is a ThinkPad T61 which contains 
  an nvidia graphics card.
Added an nginx types configuration file

The types configuration files is used to define how certain file types are 
served. In this case, asc files are going to be treated as plain-text public key 
files. Therefore, they must be served as plain-text files. Without this 
particular configuration, the asc files will not be served as plain text (and 
viewable in the browser) and instead, will be offered as a file download.
updated boot_update_path to match new directory structure, which now seperates plain-text kernel configs from actual kernel builds. they were previously all thrown in the same directory.