Merge the 'client-library-split' branch into trunk

New Features:
 * Split the project into a library and a client
 * Relicense all code as LGPL
 * Remove all global variables
 * Make most functions thread-safe (Exceptions: parsing maps and rules)
 * Add a GObject based API
 * Add zoom level 18 support
 * Add capability to query and edit rules

Note: This code was created during the Google Summer of Code 2009.
Add an autotools based build system

- moved all code to the src directory
- generates pkg-config files

remove memphis-uninstalled.pc.in
naming fixes
create tiles folder if not available
Add autogen.sh and .gitignore
Upadate scons config
Add memphis cli tool to the build system
Add some unit tests and enable AM_SILENT_RULES
Make osmFile private
Add test case /rule_set/add_rule
Make cfgRules private
Fix a typo in configure.ac
Oops I missed to add memphis-private.h
Execute libtoolize first
Add configure to autogen.sh
Introduce MemphisRuleType

More work is needed to replace the old rule type in the whole library.
It is only used for the public API at the moment.
pass all arguments of autogen.sh to configure
Replace MemphisRule with a new boxed-struct implementation
Fix border size calculation regression, reorder rule struct
Add a unit test for rule properties