Add octemplate jQuery plugin

jQuery plugin for micro templates

Strings are automatically escaped, but that can be disabled by setting escapeFunction to null.

Usage examples:

```
	var htmlStr = '<p>Bake, uncovered, until the {greasystuff} is melted and the {pasta} is heated through, about {min} minutes.</p>'
	$(htmlStr).octemplate({greasystuff: 'cheese', pasta: 'macaroni', min: 10});

	var str = '<p>Welcome back {user}</p>';
	$(str).octemplate(
		{user: '<strong>John Q. Public</strong>'}, 
		{escapeFunction: null}
	);
 ```
The latter is of course a bad example, but you get the drift I hope ;)

Be aware that the target string must be wrapped in an HTML element for the plugin to work. The following won't work:
 ```
     var textStr = 'Welcome back {user}';
     $(textStr).octemplate({user: 'John Q. Public'});
 ```
For anything larger than one-liners, you can use a simple $.get() ajax request to get the template, or you can embed them in the page using the text/template type:
 
 ```
<script id="contactListItemTemplate" type="text/template">
	<tr class="contact" data-id="{id}">
		<td class="name">
			<input type="checkbox" name="id" value="{id}" /><span class="nametext">{name}</span>
		</td>
		<td class="email">
			<a href="mailto:{email}">{email}</a>
		</td>
		<td class="phone">{phone}</td>
	</tr>
 </script>
```

And in you code:

```
var $tmpl = $('#contactListItemTemplate');
var contacts = // fetched in some ajax call

$.each(contacts, function(idx, contact) {
		$contactList.append(
			$tmpl.octemplate({
				id: contact.getId(),
				name: contact.getDisplayName(),
				email: contact.getPreferredEmail(),
				phone: contact.getPreferredPhone(),
			});
		);
});
```

This is **not** meant as a full-fledged templating framework, but for making simple scripts easier, while avoiding XSS in the process.
That being said the entire Contacts app is build using this simple plugin ;)

@bartv2 @LukasReschke @Raydiation @georgehrke