simple AOP library using _part_