break up into api and imll
cleanup dependencies
Merge pull request #3 from heiko-braun/core-api

Separate Core API from implementation