Some folder reorganization

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Change license to LGPLv3

This should expand our target audience a bit.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Begin to librarize luftballons

Right now we're just throwing everything in to a library called libluftdraw.
We're building with libtool, though. Next step will be separating out the
headers.

Right now we have a static -rpath that isn't terribly configurable. We'll need
to address that later.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Factor out weird Makefile bits into include file

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Setup framework for -fvisibility=hidden

We now build hidden by default and have macros to export. This also lets our
external API have a prefix while internally we discard it.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Add state_set_material

Just something that shouldn't be directly accessed and is.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Fix a couple of glitches in object cursors

Just some off-by-1 type stuff

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Split out the API defs from the main code

We now have a separate, versionable API which we can install. We do some clever
hackery to let API symbols start with luft_ for users but still refer to
everything by normal names internally. It's a bit weird, but an extra hurdle to
changing the API should prevent inadvertent stability breaks.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Add root makefile

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Make demo program use luftballons as a shared library

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>