Copy common files in the plugins into a separate common folder

common is for dependencies for general plugins
common-wl is for dependencies for weblearn plugins
Remove unnecessary test file (to prevent conflicts)
Add file-tree css to common-wl
Add images for file-tree.css file and fix urls
Add the youtube code
fix tab/whitespacing on ytembed.js
Fix comment error (plugin is ytembed, not oxpoints), add CSS for font icons (used for search field)
ADD JS/VIDEOSEARCH.JS

To abstract YouTube's API away from the ytsearch plugin, a more general
class will be written. This is just the boilerplate for that class
VIDEOSEARCH.JS: INITIALIZE SETTINGS PROPERTY

Set up the settings property. Main differences from ytsearch.js are:

- A base url must be specified so that the service is abstracted from
  YouTube
- For displayResult, a different object structure for the result is
  assumed (a simpler one). Will be noted in the documentation, but will
  probably just be title, description, id and meta to hold the rest
VIDEOSEARCH.JS: ADD INTERNAL REFERENCE, ADD QUERY PARAMETER

Internal reference to this added for easier use in methods; query property
to be used for running the search
VIDEOSEARCH.JS: ADD METHOD TO BIND SEARCH FUNCTIONS TO FORM

bindEventsToForm ensures that if the parameters for the search form change
then the query is modified and that if the form is submitted or search
button hit, the query runs
VIDEOSEARCH.JS FRESH START

Reverting this script back to beginning to restructure it
VIDEOSEARCH.JS: MOVE INTENDATION BY 1, MORE BOILERPLATE

Fixed indentation since the whole code is wrapped by a closure and begin
defining the main property and method required for the plugin
VIDEOSEARCH.JS: ADD DEFAULT OPTIONS

- callback will be the user-defined method that gives the correctly
  formatted JSON
- displayResult displays an individual result
- noResult is shown when the callback produces an empty array
VIDEOSEARCH.JS: ADD CLASSES TO PARAMS

Need selectors for the results, query field and search button, so those
are specified. Also, reference to this is saved for later
VIDEOSEARCH.JS: DEFINE DISPLAYRESULTS

displayResults uses the user-defined callback to fetch the array, then
loops through the array to produce the html output; if there are no
results then the noResult parameter is used instead
VIDEOSEARCH.JS: BIND SEARCH FUNCTIONALITY TO THE FORM

Define the procedures to run after the search button is hit or the form
is submitted
ADD VIDEOSEARCH-YOUTUBE.JS

Skeleton for integrating YouTube's API with videosearch.js
VIDEOSEARCH-YOUTUBE: ADD OPTIONS, INITIALIZE SETTINGS

Options are the api key, the classes that correspond to any inputs in the
form and default values for the parameters
VIDEOSEARCH-YOUTUBE.JS: INITIALIZE QUERY, BUILD URL, DO AJAX CALL

Removed q parameter since the value for that field is provided by the
first .each() loop