add ghost framework

@ivarpruijn