External declarations implemented, ready for linking