Split toast directive from container, add transition support