Add README.asc
SConstruct: remove unused commented out code
smalls/ast/AstFrame: define a collection interface

Instead of exposing the variables collection directly, define begin(),
end(), etc.
smalls/parser: remove unused code
Use BOOST_FOREACH where possible

Previous commits enabled using BOOST_FOREACH on our custom collections
in most cases, though there are still bugs.
smalls/parser/SymbolTable: add Scope::override()

Scope::override() potentially replaces an existing symbol in the scope
if it is already defined. To implement this we had to change the list
of symbols in the scope to doubly-linked (to facilitate removal) and
rearrange the header file a bit.
Move ast/ into namespace ast::
smalls/ast/Frame: define variable attributes assigned,initialised,etc

Add several attributes to ast::Variable:
- exported
- assignable
- assigned
- initialized
- used

The first three are required to enforce that exported symbols cannot
be assigned to.

All of them can be useful for some primitive optimizations. Obviously
for advanced optimizations used and assigned need to be re-calculated
after transformations, but even these simple attributes are sufficient
for a lot of constant propagation and inlining, etc.
TMP: codegen: typechecking, new call conv
tmp: working on modules
tmp: working on a pattern matcher
util/FastInput.hpp: bugfix in BufferedInput

m_head wasn't being initialized properly so fillBuffer() would set
m_bufOffset to a negative value the first time.
util/utf-8.cpp: minor optimization in doRead()
malls/parser/Syntax.cpp: bugfix in SyntaxVector::getElement()

Lazy wrapping wasn't implemented properly