bempline 2.0.0

Simple template library
Documentation
# Bempline
## The Bempline Language
The Bempline language is meant to be simple and straightforward. I don't think
if's and else's or for's are needed in a template engine, but I'm not wearing
my glasses.  

I just want something simple and easy that allows me to include a file in the
middle of another, and replace variables.

All Bempline code is between a curly brace and tilde, {~ like this ~}. There must
be a space between the tilde and the Bempline code. The first character must be
a `$` or `@` followed immediately by a non-numeric, non-whitespace character.

#### Including Other Files
```
{~ @include copyright.txt ~}

Chapter One:
```

#### Filling In Variables
```
Dear Customer,

The product you requested is {~ $productPrice ~}. Shipping is an additional
{~ $shippingRate ~}.

Sincerely,
Coorp.
```

#### Patterns
```
{~ @pattern post ~}
<div class="post">
	<h1>{~ $title ~}</h1>
	<p>{~ $summary ~}</p>
</div>
{~ @end-pattern ~}
```

## Optional Variables/Includes (2.0.0)
You can make a variable optional or required by appending a '?' or '!' to the
end of the name, respectively. For example, if you want to require that the
variable `foo` *must always* be replaced with a value, you can write `$foo!`. A
program conforming to this spec should return an error if a document is
finalized with a required variable that is not filled in. Variables default to
*optional*.

In a similar sense, an include can be made optional like this:
`@include? foo.txt`. Includes default to *required*.