particle-engine: Free attributes on destroy
particle-engine: Tiny refactor
particle-engine: Map attribute buffer to engine->priv->vertices
particle-engine: Tick refactor
particle-engine: Keep counters of touched particles in tick()
particle-engine: Break early optimisation in tick()
Rename 'particle-engine' -> 'particle-emitter'
Add a particle-engine abstraction

This creates a generic particle engine type, and abstracts the details
of creating a painting a set of particles away form the logic involved
in creating and tracking their position. The idea here is that this will
then be used to support other types of particle systems, for example
particle swarms.